测试中出现ERROR StatusLogger No log4j2 configuration file

时间:2023-01-30 22:26:56

概述

在hibernate框架搭建完成用log4j2进行测试时,总是出现ERROR StatusLogger No log4j2 configuration file found. Using default configuration: logging only errors to the console。错误。经过各种方法后,终于找到一种有效管用的方法。首先介绍我的环境版本号:

log4j2的jar包版本号是hibernate5框架自带的log4j2,如下所示:

测试中出现ERROR StatusLogger No log4j2 configuration file

错误解决办法:右击工程名新建一个source folder, 命名为resources,下面建一个log4j2.xml文件,

<?xml version="1.0" encoding="UTF-8"?>

<Configuration status="warn">
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%m%n" />
</Console>
</Appenders>
<Loggers>
<Root level="INFO">
<AppenderRef ref="Console" />
</Root>
</Loggers>
</Configuration>
  • 解释一下:Configuration后面的status,这个用于设置log4j2自身内部的信息输出,可以不设置,当设置成trace时,你会看到log4j2内部各种详细输出。

  • log4j2配置文件可以使用XML或JSON,似乎 不再支持properties文件了。默认的文件名也有所不同,log4j2.xml,不再是log4j.xml。

  • log4j2.xml可以放在任意的地方,只要你最后把它放到了classpath里,上面的项目中新建一个resources目录用于放置log4j2.xml,如果在未加入classpath时尝试运行时会报错误。