当前位置: 首页 > 知识库问答 >
问题:

log4j-over-slf4j。jar和slf4j-log4j12。jar冲突。。。但我没有log4j-over-slf4j

常经赋
2023-03-14

我在maven项目中使用了SLF4J和log4j。当我在eclipse中用tomcat运行项目时,一切都正常,在maven中使用tomcat maven插件运行项目时。

但是当我把战争穿上我的tomcat正式服时,项目没有开始,给了我这个错误。

JAVAlang.IllegalStateException:检测到log4j-over-slf4j。jar和绑定slf4j-log4j12。类路径上的jar,抢占StackOverflowerError。另见http://www.slf4j.org/codes.html#log4jDelegationLoop更多细节。

我已经在stackoverflow中看到了很多关于这个错误的答案,并且我已经明白我需要排除冲突jar。问题是我的项目中没有log4j-over-slf4j。。。的lib文件夹。war不包含这个jar,问题只出现在我的生产服务器的tomcat服务器中。我不知道该怎么办。我把我的依赖树放在这里。

[INFO] +- junit:junit:jar:4.12:test
[INFO] |  \- org.hamcrest:hamcrest-core:jar:1.3:test
[INFO] +- com.sun.faces:jsf-api:jar:2.2.13:compile
[INFO] +- com.sun.faces:jsf-impl:jar:2.2.13:compile
[INFO] +- javax.servlet:jstl:jar:1.2:compile
[INFO] +- org.hibernate:hibernate-entitymanager:jar:5.1.0.Final:compile
[INFO] |  +- org.jboss.logging:jboss-logging:jar:3.3.0.Final:compile
[INFO] |  +- org.hibernate:hibernate-core:jar:5.1.0.Final:compile
[INFO] |  |  +- (org.jboss.logging:jboss-logging:jar:3.3.0.Final:compile - omitted for duplicate)
[INFO] |  |  +- (org.hibernate.javax.persistence:hibernate-jpa-2.1-api:jar:1.0.0.Final:compile - omitted for duplicate)
[INFO] |  |  +- (org.javassist:javassist:jar:3.20.0-GA:compile - omitted for duplicate)
[INFO] |  |  +- antlr:antlr:jar:2.7.7:compile
[INFO] |  |  +- (org.apache.geronimo.specs:geronimo-jta_1.1_spec:jar:1.1.1:compile - omitted for duplicate)
[INFO] |  |  +- org.jboss:jandex:jar:2.0.0.Final:compile
[INFO] |  |  +- (com.fasterxml:classmate:jar:1.3.0:compile - omitted for conflict with 1.1.0)
[INFO] |  |  +- (dom4j:dom4j:jar:1.6.1:compile - omitted for duplicate)
[INFO] |  |  \- (org.hibernate.common:hibernate-commons-annotations:jar:5.0.1.Final:compile - omitted for duplicate)
[INFO] |  +- dom4j:dom4j:jar:1.6.1:compile
[INFO] |  |  \- (xml-apis:xml-apis:jar:1.0.b2:compile - omitted for conflict with 1.4.01)
[INFO] |  +- org.hibernate.common:hibernate-commons-annotations:jar:5.0.1.Final:compile
[INFO] |  |  \- (org.jboss.logging:jboss-logging:jar:3.3.0.Final:compile - omitted for duplicate)
[INFO] |  +- org.hibernate.javax.persistence:hibernate-jpa-2.1-api:jar:1.0.0.Final:compile
[INFO] |  +- org.javassist:javassist:jar:3.20.0-GA:compile
[INFO] |  \- org.apache.geronimo.specs:geronimo-jta_1.1_spec:jar:1.1.1:compile
[INFO] +- org.hibernate:hibernate-validator:jar:5.2.4.Final:compile
[INFO] |  +- javax.validation:validation-api:jar:1.1.0.Final:compile
[INFO] |  +- (org.jboss.logging:jboss-logging:jar:3.2.1.Final:compile - omitted for conflict with 3.3.0.Final)
[INFO] |  \- com.fasterxml:classmate:jar:1.1.0:compile
[INFO] +- org.slf4j:slf4j-log4j12:jar:1.7.21:compile
[INFO] |  +- org.slf4j:slf4j-api:jar:1.7.21:compile
[INFO] |  \- log4j:log4j:jar:1.2.17:compile
[INFO] +- log4j:apache-log4j-extras:jar:1.2.17:compile
[INFO] |  \- (log4j:log4j:jar:1.2.17:compile - omitted for duplicate)
[INFO] +- javax.servlet:javax.servlet-api:jar:3.0.1:provided
[INFO] +- org.postgresql:postgresql:jar:9.4.1208.jre7:compile
[INFO] +- org.primefaces:primefaces:jar:6.0:compile
[INFO] +- org.primefaces.themes:start:jar:1.0.10:compile
[INFO] +- commons-io:commons-io:jar:2.5:compile
[INFO] +- org.jxls:jxls-reader:jar:2.0.2:compile
[INFO] |  +- org.apache.commons:commons-digester3:jar:with-deps:3.2:compile
[INFO] |  |  +- cglib:cglib:jar:2.2.2:compile
[INFO] |  |  |  \- asm:asm:jar:3.3.1:compile
[INFO] |  |  +- commons-beanutils:commons-beanutils:jar:1.8.3:compile
[INFO] |  |  |  \- (commons-logging:commons-logging:jar:1.1.1:compile - omitted for duplicate)
[INFO] |  |  \- (commons-logging:commons-logging:jar:1.1.1:compile - omitted for conflict with 1.2)
[INFO] |  +- org.apache.commons:commons-jexl:jar:2.1.1:compile
[INFO] |  |  \- (commons-logging:commons-logging:jar:1.1.1:compile - omitted for duplicate)
[INFO] |  +- org.apache.poi:poi:jar:3.12:compile
[INFO] |  |  \- (commons-codec:commons-codec:jar:1.9:compile - omitted for conflict with 1.10)
[INFO] |  +- org.apache.poi:poi-ooxml:jar:3.12:compile
[INFO] |  |  +- (org.apache.poi:poi:jar:3.12:compile - omitted for duplicate)
[INFO] |  |  \- org.apache.poi:poi-ooxml-schemas:jar:3.12:compile
[INFO] |  |     \- org.apache.xmlbeans:xmlbeans:jar:2.6.0:compile
[INFO] |  |        \- stax:stax-api:jar:1.0.1:compile
[INFO] |  +- (org.slf4j:slf4j-api:jar:1.7.12:compile - omitted for conflict with 1.7.21)
[INFO] |  \- org.slf4j:jcl-over-slf4j:jar:1.7.12:compile
[INFO] |     \- (org.slf4j:slf4j-api:jar:1.7.12:compile - omitted for conflict with 1.7.21)
[INFO] +- org.jsoup:jsoup:jar:1.9.2:compile
[INFO] +- net.sourceforge.htmlunit:htmlunit:jar:2.22:compile
[INFO] |  +- xalan:xalan:jar:2.7.2:compile
[INFO] |  |  \- xalan:serializer:jar:2.7.2:compile
[INFO] |  +- org.apache.commons:commons-lang3:jar:3.4:compile
[INFO] |  +- org.apache.httpcomponents:httpclient:jar:4.5.2:compile
[INFO] |  |  +- org.apache.httpcomponents:httpcore:jar:4.4.4:compile
[INFO] |  |  +- (commons-logging:commons-logging:jar:1.2:compile - omitted for conflict with 1.1.1)
[INFO] |  |  \- (commons-codec:commons-codec:jar:1.9:compile - omitted for duplicate)
[INFO] |  +- org.apache.httpcomponents:httpmime:jar:4.5.2:compile
[INFO] |  |  \- (org.apache.httpcomponents:httpclient:jar:4.5.2:compile - omitted for duplicate)
[INFO] |  +- commons-codec:commons-codec:jar:1.10:compile
[INFO] |  +- net.sourceforge.htmlunit:htmlunit-core-js:jar:2.22:compile
[INFO] |  +- net.sourceforge.htmlunit:neko-htmlunit:jar:2.21:compile
[INFO] |  |  \- xerces:xercesImpl:jar:2.11.0:compile
[INFO] |  |     \- (xml-apis:xml-apis:jar:1.4.01:compile - omitted for conflict with 1.0.b2)
[INFO] |  +- net.sourceforge.cssparser:cssparser:jar:0.9.19:compile
[INFO] |  |  \- org.w3c.css:sac:jar:1.3:compile
[INFO] |  +- (commons-io:commons-io:jar:2.5:compile - omitted for duplicate)
[INFO] |  +- commons-logging:commons-logging:jar:1.2:compile
[INFO] |  \- org.eclipse.jetty.websocket:websocket-client:jar:9.2.17.v20160517:compile
[INFO] |     +- org.eclipse.jetty:jetty-util:jar:9.2.17.v20160517:compile
[INFO] |     +- org.eclipse.jetty:jetty-io:jar:9.2.17.v20160517:compile
[INFO] |     |  \- (org.eclipse.jetty:jetty-util:jar:9.2.17.v20160517:compile - omitted for duplicate)
[INFO] |     \- org.eclipse.jetty.websocket:websocket-common:jar:9.2.17.v20160517:compile
[INFO] |        +- org.eclipse.jetty.websocket:websocket-api:jar:9.2.17.v20160517:compile
[INFO] |        +- (org.eclipse.jetty:jetty-util:jar:9.2.17.v20160517:compile - omitted for duplicate)
[INFO] |        \- (org.eclipse.jetty:jetty-io:jar:9.2.17.v20160517:compile - omitted for duplicate)
[INFO] \- xml-apis:xml-apis:jar:1.4.01:compile 

编辑:

经过许多许多其他测试,这个问题只发生在我的正式服tomcat,我部署在其他8台服务器和系统运行正常。我想这与我的正式服tomcat运行的其他项目冲突。这可能吗?

共有1个答案

徐知
2023-03-14

你应该有一个log4j-over-slf4j。tomcat/lib文件夹中的jar。你检查过了吗?

 类似资料:
  • 问题内容: slf4j-log4j12和log4j-over- slf4j有 什么区别?什么时候应分别使用? 问题答案: 如果您的代码或正在使用的某些库直接使用Log4j,但要使用 与Log4j不同的SLF4J绑定 ,请使用此选项。它将Log4j API调用路由到SLF4J到您选择的绑定。您需要从类路径中删除Log4j库,并用此依赖项替换它。 如果 要对SLF4J使用Log4j 1.2绑定, 请使

  • 我刚刚将我的spark应用程序插入了Cassandra。我用的是幻影卡桑德拉司机。 现在,在单元测试期间,我得到了以下错误 在类路径上检测到log4j-over-slf4j.jar和绑定slf4j-log4j12.jar 异常是在SparkCintext初始化期间抛出的,这是因为我的pom.xml中现在有了Phantom依赖项(Phantom与Spark发生直接冲突似乎很疯狂,但事实就是如此) 我

  • 我在我的项目中使用了,将视频从。我还使用了来支持日志结束。 这里我得到一个错误 为了解决日志记录问题,我使用了两个jar文件作为库。有没有人面临同样的问题。如果这样,请写建议或解决方案来摆脱这个混乱。提前感谢。

  • 问题内容: 我在项目中曾使用来转码来自的视频。我也曾经用来支持日志记录结束。 在这里我得到一个错误 我已将两个jar文件都用作库,以解决日志记录问题。有没有人遇到过同样的问题,如果这样的话,请写出解决这个问题的建议或解决方案。提前致谢。 问题答案: 因此,您必须排除冲突依赖性。试试这个: 这解决了slf4j和Dozer的相同问题。

  • 主要内容:SLF4J 与 Log4j 的区别,为什么 SLF4J 优于 Log4J?SLF4J 与 Log4j 的区别 SLF4J(Simple Logging Façade for java)是一个 API,旨在提供对许多日志框架的通用访问,log4j 就是其中之一。 它基本上是一个抽象层。它不是日志记录实现。这意味着如果您正在编写一个库并且您使用 SLF4J,您可以将该库提供给其他人使用,他们可以选择与 SLF4J 一起使用的日志记录实现,例如 log4j 或 Java 日志

  • 从SLF4J页面我明白了这一点 slf4j-log4j12 模块的目的是将对 SLF4J 记录器的调用委托或重定向到 log4j。日志 4j 对 slf4j 模块的目的是将对日志4j 记录器的调用重定向到 SLF4J。如果 SLF4J 与 slf4j-log4j12.jar 绑定,并且类路径上也存在.jar,则在第一次调用 SLF4J 或 log4j 记录器后,将不可避免地立即发生堆栈溢出错误。