java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger(Ljava/lang/Class;Ljava/lang/S
Posted
技术标签:
【中文标题】java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;【英文标题】: 【发布时间】:2014-12-26 16:42:35 【问题描述】:我正在将 Spring Web 项目转换为 Maven 项目,但出现此错误:
java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;
除了这个错误,我似乎在依赖方面有很多问题,我正在尝试修复它们,但我是 Maven 的新手:
2014 年 10 月 30 日下午 3:53:30 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 未加载。请参阅 Servlet 规范 2.3,第 9.7.2 节。违规类:javax/el/Expression.class> 2014 年 10 月 30 日下午 3:53:30 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 未加载。请参阅 Servlet 规范 2.3,第 9.7.2 节。违规类:javax/el/Expression.class> 2014 年 10 月 30 日下午 3:53:30 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 未加载。请参阅 Servlet 规范 2.3,第 9.7.2 节。违规类:javax/servlet/Servlet.class> 2014 年 10 月 30 日下午 3:53:30 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 未加载。请参阅 Servlet 规范 2.3,第 9.7.2 节。违规类:javax/servlet/Servlet.class 2014 年 10 月 30 日下午 3:53:30 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 未加载。请参阅 Servlet 规范 2.3,第 9.7.2 节。违规类:javax/el/Expression.class 2014 年 10 月 30 日下午 3:53:30 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 未加载。请参阅 Servlet 规范 2.3,第 9.7.2 节。违规类:javax/servlet/Servlet.class
(阅读完整输出了解更多详情)
完成输出 -> http://pastebin.com/wKa2fVSP Pom.xml -> http://pastebin.com/sWCidx07 Web.xml -> http://pastebin.com/uk9e4rUy我使用的是 Tomcat 7.0。
【问题讨论】:
【参考方案1】:您似乎在两个库中有 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"
【讨论】:
【参考方案2】:我删除了 jboss-common-3.2.3.jar、commons-logging-1.1.1.jar、commons-lang-2.3.jar 和 commons-collections-3.2.2。然后它对我有用。我在 java 10 中使用了widfly 13
【讨论】:
以上是关于java.lang.NoSuchMethodError: org.jboss.logging.Logger.getMessageLogger(Ljava/lang/Class;Ljava/lang/S的主要内容,如果未能解决你的问题,请参考以下文章