解决SpringBoot启动时日志Jar包冲突问题
Posted Smile_Miracle
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决SpringBoot启动时日志Jar包冲突问题相关的知识,希望对你有一定的参考价值。
基于Maven构建的项目,很多Jar包会在pom里面被依赖式的注入进来,有时如果有相同类型的JAR就会造成Jar包冲突,下面贴上我遇到的关于日志的Jar冲突的问题以及解决办法
问题
从启动日志最上面可以看到 Class path contains multiple SLF4J bindings.这么一段话,它的意思是说绑定了多个日志JAR,造成这个的原因是由于Jar包冲突
从这段日志slf4j-log4j12可以看出是由于logback的包与slf4j-log4j12这个包冲突了,那么这时我们得查询pom的依赖找到是哪些包导入了这个slf4j-log4j12,因为springboot默认日志是最新的logback包,所有我们要保证这个Jar的唯一,下来介绍如何排除;
解决[基于Eclipse方式]
打开pom文件
选择 Dependency Hierarchy ,然后在右上角的filter搜索框输入slf4j查看POM中哪些Jar的依赖导入了slf4j-log4j12这个包
通过查找可以看到是由于webmagic-core这个包的依赖引入了冲突的JAR,那么我们可以在pom中通过 <exclusions>属性排除这个引入的包:
排除过后clean 然后maven update
可以看到启动正常,不在存在JAR冲突的问题。至此问题解决。
以上是关于解决SpringBoot启动时日志Jar包冲突问题的主要内容,如果未能解决你的问题,请参考以下文章
原创解决SpringBoot在部署过程中出现大量jar包冲突的问题
原创解决SpringBoot在部署过程中出现大量jar包冲突的问题