SLF4J 链接错误

SLF4J Linkage Error

我已经在将使用 ActiveMQ 的 WebSphere Application Server 中配置了 JMS Provide。为了发送消息,WebSphere 需要在类路径中添加“activemq-all-5.9.1.jar”,所以我添加了它。这个“activemq-all”里面包含slf4j classes

现在我的应用程序包含“slf4j-api-1.7.5.jar”。当我启动 WebSphere 时,它​​给出

Caused by: java.lang.LinkageError: org.slf4j.LoggerFactory
    at java.lang.ClassLoader.defineClassImpl(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:264)

我尝试使用不包含 slf4j 类 的不同 activemq jar,但当时它给出 ClassNotFoundExeption

这是因为slf4j logger不能绑定两次。在当前场景中,服务器和应用程序都绑定了 slf4j 记录器。

使用不依赖于 slf4j 记录器的旧 ActiveMQ jar。这样,应用程序的默认记录器就可以工作了。