gpt4 book ai didi

java - "This version of SLF4J requires log4j version 1.2.12"log4j 1.2.17 警告

转载 作者:行者123 更新时间:2023-12-02 01:11:13 29 4
gpt4 key购买 nike

我有一个 Java Maven 项目,其依赖项包括 slf4j 及其 log4j 适配器。我根据 http://mvnrepository.comlog4jslf4j-log4j12slf4j-api 的版本管理为其最新版本。特别是 1.2.17 的 log4j 版本远远超过 1.2.12,但我仍然收到错误

SLF4J: This version of SLF4J requires log4j version 1.2.12 or later. 
See also http://www.slf4j.org/codes.html#log4j_version

我完全不清楚。

我的 Maven 依赖管理如下所示:

<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>apache-jena-libs</artifactId>
<type>pom</type>
<version>2.10.0</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
</dependencies>
</dependencyManagement>

如何消除警告?

P.S.:我还收到一个 java.lang.NoSuchMethodError: org.apache.log4j.Logger.isTraceEnabled()

P.P.S.:由于您的评论,我记得该程序有一个“lib”文件夹,该文件夹不包含在 Maven 的类路径中,而是包含在 Eclipse 本身的类路径中,因此冲突的依赖项必定位于该文件夹中。抱歉,我完全忘记了,我猜这是我将 Maven 与 lib 文件夹混合在一起的错。我想我必须尝试将尽可能多的库转换为 Maven 依赖项。但奇怪的是,即使我编辑“Order and Export”将 M​​aven 依赖项放在顶部,问题仍然出现。

最佳答案

slf4j-log4j12 中的

StaticLoggerBinder 代码很早就加载,它会执行检查以确定 TRACE 级别在 log4j 中是否可用。这是代码:

private StaticLoggerBinder() {
loggerFactory = new Log4jLoggerFactory();
try {
Level level = Level.TRACE;
} catch (NoSuchFieldError nsfe) {
Util.report("This version of SLF4J requires log4j version 1.2.12 or later."+
" See also http://www.slf4j.org/codes.html#log4j_version");
}
}

对我来说,它似乎非常密封。

可能是某些其他依赖项正在引入或实际上嵌入了早期版本的 log4j。已知某些 *-standalone.jar 文件可以执行此操作。

在部署时检查您的类路径。您是否在应用程序服务器中部署?服务器类路径上是否有旧版本的 log4j?在 java 认可的路径中?

关于java - "This version of SLF4J requires log4j version 1.2.12"log4j 1.2.17 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15969739/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com