解决slf4j日志jar包冲突
错误原因:Caused by: java.lang.IllegalArgumentException: LoggerFactory is not a Logback LoggerContext but Logback is on the classpath. Either remove Logback or the competing implementation (class org.slf4j.impl.Log4jLoggerFactory loaded from file:/**/****/WEB-INF/lib/slf4j-log4j12-1.7.30.jar). If you are using WebLogic you will need to add ‘org.slf4j’ to prefer-application-packages in WEB-INF/weblogic.xml: org.slf4j.impl.Log4jLoggerFactory
错误描述:大致意思就是“slf4j-log4j12-1.7.30.jar”这个jar包引起的冲突,需要去替换成“org.slf4j”包
解决步骤:
1.因为这个jar包我不知道是在属于哪个版本的,所以先去查到是哪个引用这个jar包的
在idea控制台中输入命令mvn dependency:tree
D:\workspace_idea\back-end-mesh-java>mvn dependency:tree
2.等待进程跑,然后去搜索slf4j-log4j12-1.7.30.jar这个jar包
[INFO] +- com.qcloud:cos_api:jar:4.4:compile
[INFO] | +- org.apache.httpcomponents:httpmime:jar:4.5.12:compile
[INFO] | +- org.json:json:jar:20140107:compile
[INFO] | +- org.slf4j:slf4j-log4j12:jar:1.7.30:compile
可以看到是com.qcloud版本下的
3.去pom.xml中找到qcloud,将“org.slf4j”这个jar包引入就可以了
加入前
<dependency>
<groupId>com.qcloud</groupId>
<artifactId>cos_api</artifactId>
<version>4.4</version>
</dependency>
加入后
<dependency>
<groupId>com.qcloud</groupId>
<artifactId>cos_api</artifactId>
<version>4.4</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>