0
在嘗試初始化Tomcat上的Servlet和本地ActiveMQ實例之間的JMS連接時,我遇到以下錯誤。Tomcat 4.1.24,slf4j 1.6.4和activemq 5.5.1不兼容
java.lang.NoSuchMethodError: org.slf4j.helpers.MessageFormatter.format(Ljava/lang/String;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;
at org.slf4j.impl.Log4jLoggerAdapter.warn(Log4jLoggerAdapter.java:420)
at org.apache.activemq.transport.tcp.TcpTransportFactory.createTransport(TcpTransportFactory.java:132)
at org.apache.activemq.transport.TransportFactory.doConnect(TransportFactory.java:141)
at org.apache.activemq.transport.TransportFactory.doConnect(TransportFactory.java:51)
at org.apache.activemq.transport.TransportFactory.connect(TransportFactory.java:80)
at org.apache.activemq.ActiveMQConnectionFactory.createTransport(ActiveMQConnectionFactory.java:243)
at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:258)
at org.apache.activemq.ActiveMQConnectionFactory.createActiveMQConnection(ActiveMQConnectionFactory.java:230)
at org.apache.activemq.ActiveMQConnectionFactory.createTopicConnection(ActiveMQConnectionFactory.java:208) ...
我相信我的依賴是爲了。其他線程表示這是slf4j jar庫不匹配的問題。這是我的lib目錄。
[email protected]:/usr/local/jakarta-tomcat-4.1.24/webapps/examples/WEB-INF# ls lib/
activemq-all-5.5.1.jar exolabcore-0.3.5.jar jndi_1.2.1.jar openjms-0.7.5.jar slf4j-api-1.6.4.jar
classes12.zip exolabcore-0.3.7.jar log4j-1.2.14.jar openjms-0.7.6.1.jar slf4j-log4j12-1.6.4.jar
comm.jar javax.comm.properties log4j-1.2.8.jar openjms-0.7.6.jar xercesImpl.jar
commons-logging-api.jar jms_1.0.2a.jar servlet.jar
兩個[Tomcat的根] /普通/ lib和[Tomcat的根] /共享/ lib中什麼都沒有在他們值得注意。有人有主意嗎?預先感謝您提供的任何幫助!
您在`WEB-INF/lib`中有多個版本的多個庫;這是一個壞主意。另外,如果這是servlet API,則不能部署自己的`servlet.jar`。可能無法解決這個問題,但它肯定會阻止其他人發生。 – 2011-12-13 22:09:07