即使在 build.gradle 中具有以下依赖项后,我也会收到以下两个错误:
compile group: 'org.springframework.ldap', name: 'spring-ldap-core', version: '2.3.1.RELEASE'
compile group: 'org.springframework.security', name: 'spring-security-ldap', version: '4.0.4.RELEASE'
Caused by: java.lang.ClassNotFoundException: org.springframework.ldap.core.ContextSource at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 26 common frames omitted
或
Caused by: java.lang.ClassNotFoundException: org.springframework.security.ldap.search.LdapUserSearch at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 26 common frames omitted
您能帮我解决这个错误吗?这里的依赖项之间是否存在版本控制冲突?
最佳答案
这确实看起来像是版本控制冲突。根据MVNRepository , spring-security-ldap 4.0.4.RELEASE 依赖于 spring-ldap-core 2.0.2.RELEASE 版本。
我认为您可以安全地删除 spring-ldap-core
的依赖关系,并看到这可以解决您的问题。
当您使用它时,您可能也会考虑升级到更高版本。
关于java - 使用 Spring Security 实现 LDAP 身份验证时出现 Gradle 依赖错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50482175/