首页 > 解决方案 > YET ERROR StatusLogger 找不到 Log4j 2 配置文件。使用默认配置

问题描述

我正在使用 Spring MVC 设置一个新项目,但无法配置 Log4j2,我遇到了与许多寻求帮助的错误相同的错误。

错误 StatusLogger 找不到 Log4j 2 配置文件。使用默认配置...

工具和库:

pom.xml

...
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.26</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-slf4j-impl -->
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-slf4j-impl</artifactId>
    <version>2.11.2</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-api -->
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>
    <version>2.11.2</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core -->
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.11.2</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-jcl -->
<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-jcl</artifactId>
    <version>2.11.2</version>
</dependency>
...

配置文件 src 位置

/src/com/mypackage/myproject/resorces/
where I tried to put a log4j2-test.xml file and/or a log4j2.properties, none of them worked

浏览 Tomcat 部署目录:

.../org.eclipse.wst.server.core/tmp0/wtpwebapps/MonitorManagement/WEB-INF/classes/com/mypackage/myproject/resources

可以找到这两个资源。

即使实际部署了资源,log4j2 如何无法找到它们?

编辑:它可以将资源直接放在 src 文件夹下,这是一个好方法吗?

提前致谢

标签: mavenlog4j2tomcat9

解决方案


Log4j 在类路径的根文件夹中查找。

在您的 IDE 中,您可以将log4j2.xml文件放在/src和(可能)在/resources.


推荐阅读