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>

似乎可以解决问题。