初始化OpenSaml时java.lang.NoSuchMethodError : org. slf4j.helpers.Util.report(Ljava/lang/String;)V

标签 java slf4j nosuchmethoderror opensaml

我在我的 Maven 项目中使用 OpenSaml。当我尝试使用 DefaultBootstrap 类的变体初始化 OpenSaml 时,我得到以下堆栈跟踪:

    java.lang.NoSuchMethodError: org.slf4j.helpers.Util.report(Ljava/lang/String;)V
    org.apache.log4j.Log4jLoggerFactory.<clinit>(Log4jLoggerFactory.java:47)
    org.apache.log4j.LogManager.getLogger(LogManager.java:42)
    org.slf4j.impl.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:73)
    org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:103)
    org.opensaml.xml.XMLConfigurator.<init>(XMLConfigurator.java:56)
    org.opensaml.xml.XMLConfigurator.<init>(XMLConfigurator.java:73)

我尝试执行 mvn dependency:tree 来找出从何处加载不匹配版本的 SLF4J jar。我还尝试在 mvn.bat 中将 -verbose 选项传递给 Java。这些选项都没有帮助。我试过一个一个地删除我的 pom.xml 中的依赖项。再次,没有运气。如果有人可以阐明如何找到罪魁祸首 jar 或如何解决此错误,我将不胜感激。

最佳答案

我敢打赌,您的类路径中有 slf4j-api.jar 版本 1.5.0 或更早版本,而 log4j-over-slf4j.jar 版本有更高版本。

关于初始化OpenSaml时java.lang.NoSuchMethodError : org. slf4j.helpers.Util.report(Ljava/lang/String;)V,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15863654/

相关文章:

java - JNI ByteBuffer 放字节

java - 如何在java字符串的特定位置指定字符

Java - Java 中的内存泄漏有何危害?它怎么可能被用于不良目的呢?

java - JBoss 和 ActiveMQ 之间挂起的 Socket.read() 线程

java - 懒人登录

java - 调试自定义 Kafka 连接器的简单有效方法是什么?

java - 如何修复 NoSuchMethodError?

Java 如何在构造函数中将接口(interface)作为参数传递?

java - 如何在 SLF4j 或 Log4J 中动态更改日志级别

java - 配置单元 : Cannot read file from Google Cloud Platform