小白杂记1:slf4j多重绑定
背景:
SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/C:/Workspace/ch/qos/logback/logback-classic/1.2.3/logback-classic-1.2.3.jar!/org/slf4j/impl/StaticLoggerBinder.class] SLF4J: Found binding in [jar:file:/C:/Workspace/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
小析:如提示,slf4j的日志打印有2个地方的jar包冲突了,由于本工程采用的是logback日志,所以这里选择排除掉slf4j-log4j12的依赖,看了下结构树,确实是zk引用的时候带入了该依赖,排除
<dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.4.8</version> <exclusions> <exclusion> <artifactId>slf4j-log4j12</artifactId> <groupId>org.slf4j</groupId> </exclusion> </exclusions> </dependency>
反思:随着工程的迭代开发,一波接一波的人挖坑,很多依赖包的冲突日积月累,很容易某个时刻就爆发,警惕自己以后每引入新的依赖,都检查一下结构树,看看会不会冲突,不挖坑。