在构建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中将其添加到工件中,但是没有用。
3条答案
按热度按时间mpgws1up1#
转到项目结构-〉工件-〉单击绿色'+'按钮-〉和所有Spring Security库
m1m5dgzv2#
目前,截至2018年10月,如果您正在使用Java 10,您将遇到最新的spring-security-config Maven依赖项问题。解决方法是下载spring-security-config-5.0.6.RELEASE.jarfrom here。将jar添加到您的类路径中,这样应该可以解决该问题。
mtb9vblg3#
实际上,在我的例子中,springdoc-openapi-ui依赖导致了这个错误。在删除它之后,我的应用程序工作正常。如果你在pom.xml中有它,尝试新的版本或删除它。