启动报错Class path contains multiple SLF4J bindings
文章目录1 问题背景2 解决思路1 问题背景SpringBoot项目启动失败了,报错Class path contains multiple SLF4J bindings。大致意思项目中引入的依赖有多个slf4j的实现。我们知道slf4j只是一个门面日志接口,真正的实现有很多。项目中引入的某些依赖可能底层使用了slf4j的实现依赖。导致最终有多个slf4j实现的依赖冲突了。思路参考自:spring
·
1 问题背景
SpringBoot项目启动失败了,报错
Class path contains multiple SLF4J bindings
。大致意思项目中引入的依赖有多个slf4j的实现。我们知道slf4j只是一个门面日志接口,真正的实现有很多。项目中引入的某些依赖可能底层使用了slf4j的实现依赖。导致最终有多个slf4j实现的依赖冲突了。
思路参考自:springboot 关于 Class path contains multiple SLF4J bindings.警告的解决
2 解决思路
总的思路就是找出冲突的slf4j实现的依赖并排除他。如果项目有使用logback日志,那么不推荐排除logback-classic的依赖。
- 下载一个叫
Maven Helper
的IDEA插件,作用是可视化分析pom文件引入的依赖 - 打开pom文件,做如下操作:
(我的报错是log4j-slf4j-impl-2.11.2
依赖与logback-classic
依赖冲突了,而我项目使用logback日志,因此不排除logback-classic
依赖,而是排除log4j-slf4j-imipl
依赖)
3. 每个pom文件都按照步骤2查找并exclue
4. 清除一下maven并重新刷新依赖
5. 重新启动SpringBoot项目即可
更多推荐
已为社区贡献2条内容
所有评论(0)