Eclipse 和 Maven 中的 Log4j2 - 需要有不同的配置文件

Log4j2 in Eclipse and Maven - need to have different config files

我在我的工作站上使用 Eclipse 和 m2e。

有时我 运行 我的单元测试使用内置的 Eclipse JUnit 功能单独测试以在 JUnit 视图中显示结果。

在签入代码之前的其他时间,我 运行 使用 Maven 测试目标对整个测试套件和集成进行测试。

然而,当我忘记更改我的 log4j2 配置以将最低日志级别设置为 DEBUG 时,Maven 进程终止了 Eclipse,我需要重新启动。

当我运行进行单个单元测试时,我通常将日志级别设置为 TRACE。

我的 log4j2 配置文件在我的 src/test/resources 目录中。

我还在容器内设置了 log4j2 以读取文件系统上的配置文件。

我可以在 Eclipse 运行 对话框中配置我的 Maven 目标以使用不同的 log4j2 文件吗?

原来很简单。

创建一个新的配置文件src/test/resources/log4j2-maven。xml

在 pom.xml:

配置 surefire 测试运行器
<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-surefire-plugin</artifactId>
      <version>2.17</version>
      <configuration>
        <systemProperties>
          <property>
            <name>log4j.configurationFile</name>
            <value>log4j2-maven.xml</value>
          </property>
        </systemProperties>
      </configuration>
    </plugin>
  </plugins>
</build>