前段时间公司搭建了spring boot,日志用的log4j2,代码中用的slf4j的api,有一天更新了jar包,结果log4j2.xml的配置就无效了,pom.xml文件配置如下
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<exclusions><!-- 去掉springboot默认日志配置 -->
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency> <!-- 引入log4j2依赖 -->
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>
经过排查,是因为第三方jar包引用了zookeeper,而zookeeper用的log4j
把第三方jarbao的slf4j与log4j的桥接依赖排除掉就可以了。
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>3.4.5</version>
<exclusions>
<!-- 排除slf4j与log4j的桥接依赖 -->
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
</exclusions>
</dependency>