Detected both log4j-over-slf4j.jar AND bound slf4j-log4j12.jar on the class path 解决过程


原因:log4j-over-slf4j和slf4j-log4j12是跟Java日志系统相关的两个jar包,如果同时出现,就可能会引起堆栈异常

解决:找到依赖冲突发生位置,排除一个即可。

问题是 如何找到依赖冲突,参照网上办法:

https://blog.csdn.net/lwj_zeal/article/details/82755182

这里使用命令:

./gradlew :module:dependencies --configuration compile

但是 很多时候不能直接用gradlew,只能用本地gradle(我们公司是通过代理访问互联网,gradlew每次执行都需要访问网络,比较麻烦),参照 gradle 官方文档 https://docs.gradle.org/current/userguide/installation.html,了解更多gradle

所以,使用 本地gradle 命令即可,打印 指定module的 依赖关系,方便查看打印到文件

gradle -q dependencies netmonitor-computer:dependencies >> dependence.log

定位到 依赖冲突位置,

compile group: 'org.apache.hadoop', name: 'hadoop-common', version: hadoopVersion

增加 exclude即可

compile(group: 'org.apache.hadoop', name: 'hadoop-common', version: hadoopVersion)
            {
                exclude group: 'org.slf4j'
            }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM