slf4j 2.0.0-alpha7 与 log4j 2.17.2 兼容吗?

Con*_*ist 4 log4j slf4j

我的问题与这篇文章中概述的问题非常相似(尚未得到解答):Is SLF4jJ 1.8.0-alpha2 Compatible with Log4j 2.8.2

我正在尝试从 slf4j 1.7.36 升级到 2.0.0-alpha7。

目前我的 POM 中有这个:

<!-- https://logging.apache.org/log4j/2.x/maven-artifacts.html -->
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>2.17.2</version>
    </dependency>
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>2.17.2</version>
        </dependency>
<!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.36</version>
    </dependency>
<!--  https://logging.apache.org/log4j/2.x/maven-artifacts.html -->  
    <dependency>
       <groupId>org.apache.logging.log4j</groupId>
       <artifactId>log4j-slf4j-impl</artifactId>
       <version>2
Run Code Online (Sandbox Code Playgroud)

.17.2

这按预期工作。

每次我尝试将 slf4j 更改为 2.0.0-alpha7 时,都会收到以下错误:

SLF4J:未找到 SLF4J 提供程序。SLF4J:默认为无操作 (NOP) 记录器实现 SLF4J:请参阅http://www.slf4j.org/codes.html#noProviders了解更多详细信息。SLF4J:类路径包含针对 1.8 之前的 slf4j-api 版本的 SLF4J 绑定。

有谁知道是什么原因造成的?

Pio*_*asz 5

不,目前 Log4j2 没有 SLF4J 2.x 绑定。

主要原因是 SLF4J 2.x 正处于alpha阶段,可能仍会存在向后不兼容的更改,恕不另行通知。Log4j2 的存储库中有一个分支 ( slf4j-2.0),其中包含 a 的初步版本log4j-slf4j2-impl,但我不指望它至少在 SLF4J 2.0 达到测试阶段之前被合并。

编辑:log4j-slf4j2-impl模块可从版本 获得2.19.0