SpringCloud專案裡slf4j依賴衝突問題解決
專案啟動的時候會報SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:.../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:.../org/apache/logging/log4j/log4j-slf4j-impl/1.7.25/log4j-slf4j-impl-2.11.2.jar!/org/slf4j
/impl/StaticLoggerBinder.class]
網上搜了下,都是如下這種:
1、“SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/D:/maven-3.3.3/m2/repository/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:/D:/maven-3.3.3/m2/repository/org/slf4j/slf4j-log4j12/1.7.25/slf4j-log4j12-1.7.25.jar!/org
/slf4j/impl/StaticLoggerBinder.class]”
2、“
SLF4J: Class path contains multiple SLF4J bindings. SLF4J: Found binding in [jar:file:/G:/repo/repo-mvn-qingmu/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:/G:/repo/repo-mvn-qingmu/org/slf4j/slf4j-log4j12/1.7.30/slf4j-log4j12-1.7.30.jar!/org/slf4j/impl/StaticLoggerBinder.class]”
大致可以看到都是
slf4j-log4j12-xxx.jar這種多出來的依賴,而我這個是log4j-slf4j-impl-2.11.2.jar,還是不一樣的,因為我要用logback,
所以要解決的肯定時log4j-slf4j-impl-2.11.2.jar依賴。
解決過程:
排查每個Module的依賴,idea裡有工具可以看的,然後找到log4j-slf4j-impl-2.11.2.jar,看誰依賴了它,然後在其下加入:
<exclusions> <exclusion> <groupId>org.apache.log4j</groupId> <artifactId>log4j-slf4j-impl</artifactId> </exclusion> </exclusions>