13.4 库依赖冲突问题:Detected both log4j-over-slf4j.jar AND bound slf4j-log4j12.jar on the class path

13.4 库依赖冲突问题:Detected both log4j-over-slf4j.jar AND bound slf4j-log4j12.jar on the class path

问题描述

引入第三方库'org.raml:raml-parser:0.8.12',导致slf4j依赖冲突。

java.lang.IllegalStateException: Detected both log4j-over-slf4j.jar AND bound slf4j-log4j12.jar on the class path

错误日志

Caused by: java.lang.IllegalStateException: Detected both log4j-over-slf4j.jar AND bound slf4j-log4j12.jar on the class path, preempting StackOverflowError. See also http://www.slf4j.org/codes.html#log4jDelegationLoop for more details.
    at org.slf4j.impl.Log4jLoggerFactory.(Log4jLoggerFactory.java:54)
    ... 11 more
:bootRun FAILED

Detected both log4j-over-slf4j.jar AND bound slf4j-log4j12.jar on the class path

13.4 库依赖冲突问题:Detected both log4j-over-slf4j.jar AND bound slf4j-log4j12.jar on the class path_第1张图片
classpath jar包冲突

gradle -q app:dependencies

13.4 库依赖冲突问题:Detected both log4j-over-slf4j.jar AND bound slf4j-log4j12.jar on the class path_第2张图片
依赖树分析

解决方案

排除冲突的依赖:

Maven:

 
 org.slf4j slf4j-log4j12
  log4j log4j 
 

Gradle:

compile('org.raml:raml-parser:0.8.12'){
        exclude module: 'slf4j-log4j12'
        exclude module: 'log4j'
}

参考资料:
https://docs.gradle.org/current/userguide/userguide_single.html#sec:listing_dependencies

你可能感兴趣的:(13.4 库依赖冲突问题:Detected both log4j-over-slf4j.jar AND bound slf4j-log4j12.jar on the class path)