【问题标题】:Log4j2 asking for log4j.dtdLog4j2 请求 log4j.dtd
【发布时间】:2017-01-20 21:18:44
【问题描述】:

我正在尝试从 log4j1.x 迁移到 log4j2.x。我在migration documentation 的帮助下修改了我的 log4j.xml。

当我运行我的 spring boot jar 时,我收到一个错误:

ERROR StatusLogger 解析 C:\dev\project\project-packager-boot\build\resources\main\log4j2.xml 时出错 java.io.FileNotFoundException: C:\dev\project\project-application-packager-boot\build\resources\main\log4j.dtd(系统找不到指定的文件)

这是否意味着我正在运行 log4j1 而不是 log4j2?

如果需要更多信息,请告诉我。

【问题讨论】:

    标签: java spring-boot log4j log4j2


    【解决方案1】:

    检查你的 xml 配置文件是否还有这一行:

    <!DOCTYPE log4j:configuration PUBLIC "-//APACHE//DTD LOG4J 1.2//EN" "log4j.dtd">
    

    如果是,删除它。

    参考

    -- 编辑--

    它会在不同的路径中查找 dtd,因此请验证是否存在另一个(旧)log4j 配置文件

    C:\dev\project\project-application-packager-boot\build\resources\main\log4j.xml
    

    【讨论】:

    • 它没有那行。这个错误不是意味着我正在使用 log4j1 吗?
    • 嗯。如果它要求这个dtd,那么一定有一个xml 有这个DOCTYPE。
    • @Andreas_D 你能分享一下 log4j 2.x 版本的 Internet url,它可以作为我的 DOCTYPE 的一部分包含进来
    猜你喜欢
    • 2011-06-27
    • 1970-01-01
    • 2011-06-25
    • 2017-11-21
    • 1970-01-01
    • 2022-01-18
    • 2016-06-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多