Maven 插件使用使用 log4j 记录的库
A Maven plugin uses a library which logs with log4j
在 Mojo 中,我使用 getLog()
获得了一个记录器。
假设我向我的 Maven 插件添加了一个依赖项并在那里调用了一个方法。这个依赖使用了log4j.
我可以将日志重定向到 Maven 日志吗?
编辑:
我没有指定版本。我需要 1.2.17 版 log4j 的解决方案。
如您在this answer中所见,maven 支持 SLF4J 日志记录。
如果你只是将 Log4j to SLF4j adapter 添加到插件中。
您只需在 pom.xml
:
中执行此操作
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-to-slf4j</artifactId>
<version>2.14.0</version>
</dependency>
通过添加此依赖项,log4j 将重定向到 SLF4j,SLF4j 将重定向到 maven 日志记录。
排除log4j然后使用依赖
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
<version>1.7.30</version>
</dependency>
似乎可以解决问题。
在 Mojo 中,我使用 getLog()
获得了一个记录器。
假设我向我的 Maven 插件添加了一个依赖项并在那里调用了一个方法。这个依赖使用了log4j.
我可以将日志重定向到 Maven 日志吗?
编辑:
我没有指定版本。我需要 1.2.17 版 log4j 的解决方案。
如您在this answer中所见,maven 支持 SLF4J 日志记录。
如果你只是将 Log4j to SLF4j adapter 添加到插件中。
您只需在 pom.xml
:
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-to-slf4j</artifactId>
<version>2.14.0</version>
</dependency>
通过添加此依赖项,log4j 将重定向到 SLF4j,SLF4j 将重定向到 maven 日志记录。
排除log4j然后使用依赖
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
<version>1.7.30</version>
</dependency>
似乎可以解决问题。