ElasticSearch ERROR StatusLogger Log4j2 在使用 Logback 时找不到日志记录实现



我正在使用 logback 登录我的应用程序

<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>

在我的课堂上,我使用这个

Logger logger = Logger.getLogger(ElasticSearchRepository.class.getName());

在依赖分析器中,我发现 elasticsearch 使用 log4j-api 2.11.1

<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>6.7.0</version>
</dependency>

我有这个错误:

错误状态记录器 Log4j2 找不到日志记录实现。
请将 log4j 核心添加到类路径中。
使用简单记录器登录到控制台...

我通过从 elasticsearch 依赖项中排除 log4j-api 来解决它,但另一方面,我遇到了这个错误:

原因:java.lang.ClassNotFoundException: org.apache.logging.log4j.Logger

我已经通过删除排除项恢复了 Log4j 依赖项,但我也有第一个错误,我无意添加 log4j jar,因为我已经在使用登录

添加此依赖项似乎可以解决它。

<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-to-slf4j</artifactId>
<version>2.11.1</version>
</dependency>

这不会与 logback 产生冲突,这已经足够好了,唯一可悲的是我添加了一个依赖项来解决错误而不是出于功能目的。

最新更新