小编ata*_*rno的帖子

在运行fatjar时无法加载log4j2

我正在开发一个利用log4j2日志记录的项目.在intellij开发时,一切正常,日志记录按预期完成.log4j2.xml通过intellij设置在启动时传递给jvm的java属性链接.但是一旦我尝试运行一个独立的gradle build fat-jar,我遇到了以下问题:

java -Dlog4j.debug=true -Dlog4j.configurationFile=/home/aaa/log4j2.xml -jar /home/aaa/myjar-SNAPSHOT.jar
Run Code Online (Sandbox Code Playgroud)

例外:

ERROR StatusLogger Unrecognized format specifier [d]
ERROR StatusLogger Unrecognized conversion specifier [d] starting at position 16 in conversion pattern.
ERROR StatusLogger Unrecognized format specifier [thread]
ERROR StatusLogger Unrecognized conversion specifier [thread] starting at position 25 in conversion pattern.
...
ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console.
Run Code Online (Sandbox Code Playgroud)

我甚至不知道那些[线程]来自哪里,因为即使在我的log4j2中使用基本最简单的配置我也会得到相同的错误:

<?xml version="1.0" encoding="UTF-8" ?><Configuration status="WARN" monitorInterval="86400">
<Appenders>
    <Console name="console-log" target="SYSTEM_OUT">
        <PatternLayout
                pattern="%-5p %d{yyyy-MM-dd HH:mm:ss.SSS} ${hostName} …
Run Code Online (Sandbox Code Playgroud)

java logging flume log4j2 flume-ng

8
推荐指数
2
解决办法
5474
查看次数

标签 统计

flume ×1

flume-ng ×1

java ×1

log4j2 ×1

logging ×1