spring-security 无法打开WebSecurityConfigurerAdapter.class],因为它不存在

dz6r00yl  于 2022-11-11  发布在  Spring
关注(0)|答案(3)|浏览(824)

在构建Spring应用程序之后,我遇到了这个问题:

.../WebSecurityConfigurerAdapter.class] cannot be opened because it does not exist at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:181)

我的pom.xml

<properties>
    <spring.version>4.3.0.RELEASE</spring.version>
    <springsecurity.version>4.2.3.RELEASE</springsecurity.version>
    <!--<springsecurity.version>5.0.0.RELEASE</springsecurity.version>-->
</properties>

<dependencies>

    <!--spring security web and config-->

    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-web</artifactId>
        <version>${springsecurity.version}</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-config</artifactId>
        <version>${springsecurity.version}</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-core</artifactId>
        <version>${springsecurity.version}</version>
    </dependency>

安全配置类:

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth.inMemoryAuthentication().withUser("john").password("secret123").roles("EMPLOYEE");
        auth.inMemoryAuthentication().withUser("mary").password("secret123").roles("MANAGER");
        auth.inMemoryAuthentication().withUser("susan").password("secret123").roles("ADMIN");

    }

}

初始化程式:

public class SecurityWebApplicationInitializer extends AbstractSecurityWebApplicationInitializer {

}
构建后好像找不到jar文件,我试着在IntelliJ Idea的Project Structure中将其添加到工件中,但是没有用。

mpgws1up

mpgws1up1#

转到项目结构-〉工件-〉单击绿色'+'按钮-〉和所有Spring Security库

m1m5dgzv

m1m5dgzv2#

目前,截至2018年10月,如果您正在使用Java 10,您将遇到最新的spring-security-config Maven依赖项问题。解决方法是下载spring-security-config-5.0.6.RELEASE.jarfrom here。将jar添加到您的类路径中,这样应该可以解决该问题。

mtb9vblg

mtb9vblg3#

实际上,在我的例子中,springdoc-openapi-ui依赖导致了这个错误。在删除它之后,我的应用程序工作正常。如果你在pom.xml中有它,尝试新的版本或删除它。

相关问题