programing

클래스 [org.스프링 프레임워크]를 검사하지 못했습니다.security.config.config.confirmation.web.configuration.웹 보안 구성]

instargram 2023. 7. 1. 08:01
반응형

클래스 [org.스프링 프레임워크]를 검사하지 못했습니다.security.config.config.confirmation.web.configuration.웹 보안 구성]

spring boot 2.1.1로 프로젝트를 생성했는데 들어올리려고 하면 다음 오류가 발생합니다.

2018-12-10 19:23:14.837 오류 8096 --- [main] os.bootSpringApplication : 응용 프로그램 실행 실패

자바.java.java잘못된 상태 예외:org.springframework.boot.autoconfigure.context에서 처리 조건에 오류가 발생했습니다.속성 자리 표시자자동 구성.propertiesorg.springframework.boot.autoconfigure.condition에 있는 플레이스홀더구성자.SpringBootCondition.matches(SpringBootCondition.java:64) ~[spring-boot-autoconfigure-2.1.1).release.jar:2.1.1.RELEASE]를 org.springframework.context.notation에 지정합니다.조건 평가자입니다.shouldSkip(ConditionEvalator.java:108) ~[spring-context-5.1.3].release.jar:5.1.3.RELEASE]를 org.springframework.context.notation에 지정합니다.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionForBeanMethod(ConfigurationClassBeanDefinitionReader.java:181) ~[spring-context-5.1.3].release.jar:5.1.3.RELEASE]를 org.springframework.context.notation에 지정합니다.ConfigurationClassBeanDefinitionReader.loadBeanDefinitionForConfigurationClass(ConfigurationClassBeanDefinitionReader.java:141) ~[spring-context-5.1.3].release.jar:5.1.3.RELEASE]를 org.springframework.context.notation에 지정합니다.ConfigurationClassBeanDefinitionReader.loadBeanDefinition(ConfigurationClassBeanDefinitionReader.java:117) ~[spring-context-5.1.3.release.jar:5.1.3.RELEASE]를 org.springframework.context.notation에 지정합니다.ConfigurationClassPostProcessor.processBeanDefinitions(ConfigurationClassPostProcessor.java:327) ~[spring-context-5.1.3.release.jar:5.1.3.RELEASE]를 org.springframework.context.notation에 지정합니다.ConfigurationClassPostProcessor입니다.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:232) ~[spring-context-5.1.3.release.jar:5.1.3.RELEASE]를 org.springframework.context에 배치합니다.지지하다.사후 프로세서 등록 딜러.BeanDefinitionRegistryPostProcessors(PostProcessor RegistrationDelicate)를 호출합니다.java:spring) ~[spring-spring-5.1.3.release.jar:5.1.3.RELEASE]를 org.springframework.context에 배치합니다.지지하다.사후 프로세서 등록 딜러.BeanFactory PostProcessors(PostProcessor 등록 딜러)를 호출합니다.java:95) ~[spring-dll-5.1.3.release.jar:5.1.3.RELEASE]를 org.springframework.context에 배치합니다.지지하다.응용프로그램 컨텍스트를 추상화합니다.BeanFactory PostProcessors(ApplicationContext.java:691) ~[spring-context-5.1.3]를 호출합니다.release.jar:5.1.3.RELEASE]를 org.springframework.context에 배치합니다.지지하다.AbstractApplicationContext.refresh(AbstractApplicationContext.java:528) ~[spring-context-5.1.3.release.jar:5.1.3.RELEASE]를 org.springframework.boot에서 실행합니다.SpringApplication.refresh(SpringApplication).java:775) [spring-boot-2.1.1].release.jar:2.1.1.RELEASE]를 org.springframework.boot에서 실행합니다.SpringApplication.refreshContext(SpringApplication)입니다.java:397) [spring-boot-2.1.1].release.jar:2.1.1.RELEASE]를 org.springframework.boot에서 실행합니다.SpringApplication.run(SpringApplication).java:316) [spring-boot-2.1.1].release.jar:2.1.1.RELEASE]를 org.springframework.boot에서 실행합니다.SpringApplication.run(SpringApplication).java:1260) [spring-boot-2.1.1].release.jar:2.1.1.RELEASE]를 org.springframework.boot에서 실행합니다.SpringApplication.run(SpringApplication).java:1248) [spring-boot-2.1.1].release.jar:2.1.1.RELEASE]를 tuq로 지정합니다.FrigorificoApplication.main(FrigorificoApplication)입니다.java:14) [classes/:na] 원인: java.lang.잘못된 상태 예외:클래스 [org.스프링 프레임워크]를 검사하지 못했습니다.security.config.config.confirmation.web.configuration.ClassLoader [sun.misc]의 WebSecurityConfiguration입니다.org.springframework.util에 있는 Launcher$AppClassLoader@73d16e93].ReflectionUtils.getDeclaratedMethods(ReflectionUtils.java:686) ~[스프링 코어-5.1.3.release.jar:5.1.3.REASE]를 org.springframework.util에 배치합니다.ReflectionUtils.doMethods(ReflectionUtils.java:583) ~[스프링 코어-5.1.3.release.jar:5.1.3.REASE]를 org.springframework.util에 배치합니다.ReflectionUtils.doMethods(ReflectionUtils.java:568) ~[스프링 코어-5.1.3.release.jar:5.1.3.REASE]를 org.springframework.util에 배치합니다.ReflectionUtils.getUniqueDeclaratedMethods(ReflectionUtils.java:626) ~[스프링 코어-5.1.3.release.jar:5.1.3.RELEASE] at java.util.current.org.springframework에서 ConcurrentHashMap.computeIfAssent(ConcurrentHashMap.java:1660) ~[na:1.8.0_181].콩 공장지지하다.추상적인Autowire Capable Bean Factory.getForFactory 방법(추상적)오토와이어 Capable Bean Factory.java:721) ~[봄콩-5.1.3.org.spring 프레임워크에서 RELEASE.jar:5.1.3.REASE].콩 공장지지하다.추상적인Autowire Capable Bean Factory.목표 유형 결정(추상)오토와이어 Capable Bean Factory.java:662) ~[봄-콩-5.1.3.org.spring 프레임워크에서 RELEASE.jar:5.1.3.REASE].콩 공장지지하다.추상적인AutoWire Capable Bean Factory.predict BeanType(추상적) 예측오토와이어 Capable Bean Factory.java:630) ~[봄콩-5.1.3.org.spring 프레임워크에서 RELEASE.jar:5.1.3.REASE].콩 공장지지하다.Abstract Bean Factory.is Factory Bean(Abstract Bean Factory.java:1518) ~[봄-콩-5.1.3.org.spring 프레임워크에서 RELEASE.jar:5.1.3.REASE].콩 공장지지하다.Abstract Bean Factory.is Factory Bean(Abstract Bean Factory.java:1023) ~[봄콩-5.1.3.release.jar:5.1.3.RELEASE]를 org.springframework.boot.autoconfigure.condition으로 설정합니다.BeanTypeRegistry.addBeanTypeForNonAliasDefinition(BeanTypeRegistry.java:195) ~[spring-boot-autoconfigure-2.1.1].release.jar:2.1.1.RELEASE]를 org.springframework.boot.autoconfigure.condition으로 설정합니다.BeanTypeRegistry.addBeanTypeForNonAliasDefinition(BeanTypeRegistry.java:159) ~[spring-boot-autoconfigure-2.1.1].release.jar:2.1.1.RELEASE]를 org.springframework.boot.autoconfigure.condition으로 설정합니다.BeanTypeRegistry.addBeanType(BeanTypeRegistry.java:152) ~[spring-boot-autoconfigure-2.1.1.1.1.1.1.1.1.1.1.1.2.1을 추가합니다.release.jar:2.1.1.RELEASE]를 org.springframework.boot.autoconfigure.condition으로 설정합니다.BeanType 레지스트리.업데이트TypeIfRequired(BeanTypeRegistry.java:140) ~[spring-boot-autoconfigure-2.1.1].release.jar:2.1.1.RELEASE]( java.util)입니다.org.springframework.boot.autoconfigure.condition에서 각 나머지에 대한 반복기(반복기.java:116) ~[na:1.8.0_181].BeanType 레지스트리.업데이트TypeIfRequired(BeanTypeRegistry.java:135) ~[spring-boot-autoconfigure-2.1.1].release.jar:2.1.1.RELEASE]를 org.springframework.boot.autoconfigure.condition으로 설정합니다.BeanTypeRegistry.getNamesForType(BeanTypeRegistry.java:97) ~[spring-boot-autoconfigure-2.1.1].release.jar:2.1.1.RELEASE]를 org.springframework.boot.autoconfigure.condition으로 설정합니다.OnBeanCondition.collect BeanNamesForType(OnBeanCondition.java:298) ~[spring-boot-autoconfigure-2.1.1).release.jar:2.1.1.RELEASE]를 org.springframework.boot.autoconfigure.condition으로 설정합니다.OnBeanCondition.getBeanNamesForType(OnBeanCondition.java:289) ~[spring-boot-autoconfigure-2.1.1).release.jar:2.1.1.RELEASE]를 org.springframework.boot.autoconfigure.condition으로 설정합니다.OnBeanCondition.getBeanNamesForType(OnBeanCondition.java:278) ~[spring-boot-autoconfigure-2.1.1).release.jar:2.1.1.RELEASE]를 org.springframework.boot.autoconfigure.condition으로 설정합니다.OnBeanCondition.getMatchingBeans(OnBeanCondition.java:189) ~[spring-boot-autoconfigure-2.1.1].release.jar:2.1.1.RELEASE]를 org.springframework.boot.autoconfigure.condition으로 설정합니다.OnBeanCondition.getMatchOutComputes(OnBeanCondition.java:160) ~[spring-boot-autoconfigure-2.1.1].release.jar:2.1.1.RELEASE]를 org.springframework.boot.autoconfigure.condition으로 설정합니다.SpringBootCondition.matches(SpringBootCondition.java:47) ~[spring-boot-autoconfigure-2.1.1).RELEASE.jar:2.1.1.RELEASE] ... 16개의 공통 프레임이 누락되었습니다. 원인: java.lang.noClassDefFoundError: javax/servlet/filter at java.lang.java.lang에서 Class.getDeclaredMethods0(네이티브 메서드) ~[na:1.8.0_181].java.lang에서 Class.privateGetDeclaredMethods(Class.java:2701) ~[na:1.8.0_181].org.springframework.util에서 Class.getDeclaredMethods(Class.java:1975) ~[na:1.8.0_181].ReflectionUtils.getDeclaratedMethods(ReflectionUtils.java:668) ~[스프링 코어-5.1.3.RELEASE.jar:5.1.3.REASE] ... 38개의 공통 프레임이 누락되었습니다. 원인: java.lang.ClassNotFoundException: javax.servlet입니다.java.net 에서 필터링합니다.URLClassLoader입니다.java.lang에서 findClass(URLClassLoader.java:381) ~[na:1.8.0_181]을(를) 찾습니다.sun.misc에서 ClassLoader.loadClass(ClassLoader.java:424) ~[na:1.8.0_181]입니다.java.lang에서 Launcher$AppClassLoader.loadClass(Launcher.java:349) ~[na:1.8.0_181].ClassLoader.loadClass(ClassLoader.java:357) ~[na:1.8.0_181]...42개의 공통 프레임 생략

pasoel pom.xml:

    <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.1.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>atuq</groupId>
    <artifactId>frigorifico</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>
    <name>frigorifico</name>
    <description>Frigorifico Malargue</description>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-mail</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>


        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
            <version>0.9.0</version>
            <type>jar</type>
        </dependency>

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-collections4</artifactId>
            <version>4.1</version>
            <type>jar</type>
        </dependency>
        <dependency>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
            <version>3.2.2</version>
            <type>jar</type>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>


</project>

POM에서 spring-boot-starter-tomcat에 대한 의존성이 아래와 같으면 범위 부분을 제거합니다.

기존:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>

새로 만들기:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
</dependency>

다▁is▁it▁the▁that를 찾을 수 없다는 점에서 도움이 됩니다.javax.servlet.Filter 이 은 이: 클래스를갖는일방다법음같이것사입다용니는하종을속성은.

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>

결국엔 차를 세우게 됩니다.org.apache.tomcat.embed:tomcat-embed-core

Intellij에서 Spring Boot 애플리케이션을 실행할 때 Run/Debug Configuration(실행/디버그 구성)에서 '제공된 범위에 종속성 포함' 옵션이 선택되어 있지 않았기 때문에 로컬에서 이 문제를 확인할 수 있었습니다.

저는 이 의존성이 있다고 생각합니다.

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>

다음과 충돌했습니다.

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-core</artifactId>
    <type>jar</type>
</dependency>

왜 마지막 것이 필요합니까?이미 보안 스타터가 있으니 필요 없을 것 같은데, 제거하세요.

다음을 pom.xml에 추가해 보십시오.

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-config</artifactId>
    <version>4.0.1.RELEASE</version>
</dependency>

도움이 됐어요.

없는 클래스를 참조하려고 할 때 발생합니다.이 종속성을 추가하면 오류가 수정되었습니다.

<dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-web</artifactId>
</dependency>

내 로그 하단에 다음과 같은 내용이 표시되었습니다.

Caused by: java.lang.IllegalStateException: Error processing condition on org.springframework.boot.autoconfigure.security.servlet.SpringBootWebSecurityConfiguration$SecurityFilterChainConfiguration
Caused by: java.lang.IllegalStateException: Failed to introspect Class [org.springframework.security.config.annotation.web.configuration.WebSecurityConfiguration] from ClassLoader [jdk.internal.loader.ClassLoaders$AppClassLoader@73d16e93]
Caused by: java.lang.NoClassDefFoundError: org/springframework/security/web/SecurityFilterChain
Caused by: java.lang.ClassNotFoundException: org.springframework.security.web.SecurityFilterChain

그것은 보여졌습니다.org.springframework.security.web.SecurityFilterChain수업에 결석했습니다.

그래서 구글 검색을 해보니 수업이spring-security-web저소장추후한 후pom.xml성공적으로 되었습니다.voila, 다음빌성통로었습니다과되으공적드가▁vo다▁passed니vo습▁success.

저는 오늘 같은 문제에 직면했습니다.이 문제는 메인 스타트업 클래스가 코드의 가장 바깥쪽 레벨에 배치되지 않았기 때문에 발생한 것으로 밝혀졌습니다.시작 클래스를 올바른 위치에 정의했는지 확인합니다.

언급URL : https://stackoverflow.com/questions/53714699/failed-to-introspect-class-org-springframework-security-config-annotation-web-c

반응형