无法解析org.springframework.security.authentication.AuthenticationManager类型。它是从所需的.class文件间接引用的

问题描述 投票:4回答:6
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
    auth.inMemoryAuthentication().withUser("abcde").password("123456").roles("USER");   
}

而且我在最后一行收到错误,它说

The type org.springframework.security.authentication.AuthenticationManager cannot be resolved. It is indirectly referenced from required .class files

我找了一个解决方案,找不到解决方法。

spring spring-security
6个回答
3
投票

将spring-security-core.jar添加到项目的Build Path中。如果您使用的是Eclipse,请右键单击项目 - >属性 - > Java构建路径 - >库 - >单击添加jar或添加外部jar并指向jar文件。

另外,做干净的构建。


5
投票

将spring-security-core添加到构建路径中。如果您已有,请下载最新版本。

 <dependency>
    <groupId>org.springframework.security</groupId>
    <artifactId>spring-security-core</artifactId>
    <version>5.0.0.RELEASE</version>
 </dependency>

在mvn clean install之后,如果你仍然在eclipse中看到错误。刷新项目。这对我有用。


1
投票
  1. 导航到您自己的目录结构: C:\ Users \用户Administrator.m2 \库\组织\ springframework的\安全\弹簧安全核心\ 4.1.1.RELEASE
  2. 删除4.1.1.RELEASE目录
  3. 右键单击项目 - > maven - >更新项目
  4. 清理 - >重建项目

0
投票

如果你使用gradle,那么更容易检查你是否有这些库...编译

  • 弹簧安全网
  • 弹簧安全配置
  • 弹簧安全标记库
  • 弹簧安全LDAP
  • 弹簧引导启动-WS
  • 弹簧安全核心

0
投票

我花了3个小时来解决这个问题。

第一次修复

检查pom.XML文件是否具有如下所示的适当依赖项。对于Spring引导安全性,下面将提到强制依赖性。注意:不要在“spring web”和“spring boot web”依赖项之间混淆。它必须是“spring boot web”依赖。

<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>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

第二个修复

如果您在项目中尝试使用不同版本的spring security进行测试,则在编译选择正确版本的jar文件时,这些跟踪会产生矛盾。 (如果你不明白,请忽略这句话)。只需按照以下说明解决问题即可。

  • 转到IDE的存储库.m2 \ repository \ org \ springframework \ security \ spring-security-core \
  • 转到IDE的项目属性 - > maven - >更新项目
  • 转到IDE菜单“项目” - >清理。 ( 而已 )
  • 现在将项目作为“Spring boot Application”运行。 (首先,如果服务器在后台运行,你必须停止服务器)enter code here

我已经按照上述步骤修复了我的问题。我希望它对你也有用。


0
投票

如果你在eclipse中遇到这个问题。并且所有选项均无效,请尝试关闭项目并再次打开。

奇迹般有效!! :)

© www.soinside.com 2019 - 2024. All rights reserved.