相关疑难解决方法(0)

Log4j2 不适用于 json 配置文件

似乎 log4j 试图通过 XML 解析器解析 .json 配置文件,但为什么呢?

我通过命令行参数设置 log4j 配置文件:

-Dlog4j.configurationFile=src/log4j2.json
Run Code Online (Sandbox Code Playgroud)

文件内容:

{
    "configuration": {
        "appenders": {
            "Console": {
                "name": "Console",
                "target": "SYSTEM_OUT",
                "PatternLayout": {
                    "pattern": "%date %thread %logger %message"
                }
            }
        },
        "loggers": {
            "root": {
                "level": "debug",
                "appender-ref": {
                    "ref": "Console"
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我得到的:

[Fatal Error] log4j2.json:1:1: Content is not allowed in prolog.
ERROR StatusLogger Error parsing D:\Dev\HDelphiCrawler\src\log4j2.json org.xml.sax.SAXParseException; systemId: file:///D:/Dev/HDelphiCrawler/src/log4j2.json; lineNumber: 1; columnNumber: 1; Content is not allowed in prolog.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:257)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:348) …
Run Code Online (Sandbox Code Playgroud)

java json log4j intellij-idea kotlin

1
推荐指数
1
解决办法
2459
查看次数

标签 统计

intellij-idea ×1

java ×1

json ×1

kotlin ×1

log4j ×1