我正在将一个 Spring web 项目转换为一个 Maven 项目,但我收到了这个错误:
java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
除了这个错误,似乎我在依赖项方面有很多问题,我正在尝试修复它们,但我是 Maven 的新手:
- oct 30, 2014 3:53:30 PM org.apache.catalina.loader.WebappClassLoader validateJarFile>
- INFO: validateJarFile(C:\Users\a\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\revista2_local\WEB-INF\lib\el-api-2.2.jar)
- jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/el/Expression.class>
- oct 30, 2014 3:53:30 PM org.apache.catalina.loader.WebappClassLoader validateJarFile>
- INFO: validateJarFile(C:\Users\a\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\revista2_local\WEB-INF\lib\jboss-el-api_2.2_spec-1.0.0.Final.jar)
- jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/el/Expression.class>
- oct 30, 2014 3:53:30 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
- INFO: validateJarFile(C:\Users\a\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\revista2_local\WEB-INF\lib\jboss-javaee-5.0.0.GA.jar)
- jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class>
- oct 30, 2014 3:53:30 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
- INFO: validateJarFile(C:\Users\a\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\revista2_local\WEB-INF\lib\jboss-servlet-api_3.0_spec-1.0.0.Final.jar)
- jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
- oct 30, 2014 3:53:30 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
- INFO: validateJarFile(C:\Users\a\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\revista2_local\WEB-INF\lib\jsp-api-2.1.jar)
- jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/el/Expression.class
- oct 30, 2014 3:53:30 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
- INFO: validateJarFile(C:\Users\a\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\revista2_local\WEB-INF\lib\servlet-api-2.5.jar)
- jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
(阅读完整输出以获取更多详细信息)
- 完整输出 -> http://pastebin.com/wKa2fVSP
- Pom.xml -> http://pastebin.com/sWCidx07
- Web.xml -> http://pastebin.com/uk9e4rUy
我正在使用 Tomcat 7.0。
最佳答案
您似乎在两个库中都有 org.jboss.logging.Logger 类:
jboss:jboss-common:jar:4.2.2.GA 和 org.jboss.logging:jboss-logging:jar:3.1.3.GA
第二个是hibernate使用的,我认为它是正确的。我认为您需要使用正确的 jboss-common 版本才能避免遇到此问题。
相关问题:Error "java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger"
关于java.lang.NoSuchMethodError : org. jboss.logging.Logger.getMessageLogger(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26656421/