我正在使用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>
我遇到此错误:
ERROR StatusLogger Log4j2 could not find a logging implementation.
Please add log4j-core to the classpath.
Using SimpleLogger to log to the console...
我通过从elasticsearch依赖项中排除log4j-api来解决了这个问题,但是另一方面,我遇到了这个错误
Cause: java.lang.ClassNotFoundException: org.apache.logging.log4j.Logger
我已经通过删除排除项恢复了Log4j依赖关系,但是我也遇到了第一个错误,并且由于我已经在使用logback,所以我无意添加log4j jars
答案 0 :(得分:0)
添加此依赖项似乎可以解决它。
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-to-slf4j</artifactId>
<version>2.11.1</version>
</dependency>
这并不会与足够好的登录发生冲突,唯一可悲的是我添加了一个依赖项来解决错误,而不是出于功能目的。