1
我有一个遗留的Java EE应用程序,我正在移植到Maven框架。该应用程序最初使用slf4j 1.5x系列进行记录,我正在升级到1.7.1记录器。我在现场SLF4J读取slf4j升级绑定更新错误?不兼容的绑定
http://slf4j.org/faq.html#where_is_binding
请注意,所有绑定依赖于SLF4J-api.jar文件。
我将slf4j-api.jar升级到1.7,并且使用slf4j-simple和slf4j-log4j12。我似乎仍然得到了一个不兼容的绑定错误,这非常坦率地把我拉上了墙。任何帮助,将不胜感激
INFO: validateJarFile(C:\Users\adam\apache-tomcat-7.0.42\webapps\ myWebApp\WEB-INF\lib\geronimo-servlet_2.5_spec-1.2.jar) - jar not loaded.
See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
Oct 14, 2013 1:57:42 PM org.apache.catalina.loader.WebappClassLoader validateJar
File
INFO: validateJarFile(C:\Users\adam\apache-tomcat-7.0.42\webapps\ myWebApp\WEB-INF\lib\servlet-api-2.3.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
Oct 14, 2013 1:57:42 PM org.apache.catalina.loader.WebappClassLoader validateJar
File
INFO: validateJarFile(C:\Users\adam\apache-tomcat-7.0.42\webapps\ myWebApp\WEB-INF\lib\servlet-api-2.5-6.1.11.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/C:/Users/adam/apache-tomcat-7.0.42/webapps/
myWebApp/WEB-INF/lib/slf4j-log4j12-1.5.0.jar!/org/slf4j/impl
/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/C:/Users/adam/apache-tomcat-7.0.42/webapps/
myWebApp/WEB-INF/lib/slf4j-simple-1.5.0.jar!/org/slf4j/impl/
StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: slf4j-api 1.6.x (or later) is incompatible with this binding.
SLF4J: Your binding is version 1.5.5 or earlier.
SLF4J: Upgrade your binding to version 1.6.x.
此输出告诉你哪些文件是旧版本。也许您已将新文件添加到您的版本,但您的Web应用程序部署仍使用旧版本(1.5.0)。 – mattx
我怀疑你是对的,我不确定这是怎么发生的,因为我把所有依赖关系改为1.7.1,我可能要检查构建 – user1801279
@ user1801279你的构建可能没有从'lib中删除旧副本'目录。运行一个完整的清洁,并检查他们是否显示备份。 – chrylis