首页 > 解决方案 > 将 spring boot 从 1.3.5 更新到 1.5.17 后找不到 log4j 库

问题描述

我将 spring boot 从 1.3.5 升级到 1.5.17 并且不再找到 log4j 库。错误显示 Error:(10, 24) java: package org.apache.log4j 不存在。这是我的 pom.xml

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.17.RELEASE</version>
    <relativePath />
</parent>
<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-log4j</artifactId>
</dependency>
<dependency>
     <groupId>org.springframework.kafka</groupId>
     <artifactId>spring-kafka</artifactId>
     <version>1.3.8.RELEASE</version>
</dependency>
<dependency>
     <groupId>org.apache.kafka</groupId>
     <artifactId>kafka_2.10</artifactId>
     <version>0.8.2.2</version>
 <exclusions>
    <exclusion>
      <groupId>org.apache.zookeeper</groupId>
      <artifactId>zookeeper</artifactId>
    </exclusion>
    <exclusion>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
    </exclusion>
  </exclusions>
</dependency>

标签: javaspringspring-bootlog4j

解决方案


从 Spring Boot 1.4 开始,对 log4j 1.x 的支持已被删除,如Spring boot 1.4 的发行说明所示:

在Apache EOL 公告之后,Log4j 1 支持已被删除。

他们建议升级到 log4j 2.x,这可以通过使用以下依赖项来完成:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>

推荐阅读