You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级Log4j 1.2.12至2.13.3遇java: package org.apache.logging.log4j不存在错误

别着急,我来帮你搞定这个Log4j升级的问题~

核心问题:依赖配置不对

你当前的pom里只引入了Log4j 2的父POM(<type>pom</type>),这并没有把实际需要的API和核心实现jar包引入到项目中,所以编译器找不到org.apache.logging.log4j包。

正确的POM依赖配置

替换你现有的依赖,引入Log4j 2的API和核心实现模块:

<dependencies>
    <!-- Log4j 2 核心API包 -->
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>2.13.3</version>
    </dependency>
    <!-- Log4j 2 具体实现包 -->
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.13.3</version>
    </dependency>
</dependencies>

正确的导入与使用方式

Log4j 2的API和1.x完全不同,你需要用下面的导入语句:

import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.LogManager;

获取Logger实例的方式也要改成:

private static final Logger logger = LogManager.getLogger(YourClassName.class);

额外排查步骤

  • 执行mvn clean install命令,清理本地Maven缓存并重新下载依赖,避免旧缓存导致的问题
  • 检查你的IDE(比如IDEA/Eclipse)是否正确识别了新依赖:
    • IDEA可以打开File -> Project Structure -> Libraries,确认log4j-api-2.13.3.jar和log4j-core-2.13.3.jar已经在列表里
  • 如果项目中其他依赖间接引入了Log4j 1.x,记得排除掉避免版本冲突,比如:
<dependency>
    <!-- 这里替换成你项目中依赖Log4j 1.x的组件 -->
    <groupId>some.group</groupId>
    <artifactId>some-artifact</artifactId>
    <exclusions>
        <exclusion>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
        </exclusion>
    </exclusions>
</dependency>

内容的提问来源于stack exchange,提问作者rosh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 19:22:33