在生产中,我得到了slf4j记录器工厂,但是在开发中,我总是得到了logback工厂

时间:2018-12-23 21:31:41

标签: java maven logging logback slf4j

我的代码是:

SLF4JBridgeHandler.removeHandlersForRootLogger();
SLF4JBridgeHandler.install();
System.out.println(LoggerFactory.getILoggerFactory().getClass().getCanonicalName());

在生产服务器上,我总是返回org.slf4j.helpers.SubstituteLoggerFactory,它依次是sfl4j LoggerFactory。但是在开发人员中,我总是会返回ch.qos.logback.classic.LoggerContext。最终,我想要回退LoggerContext,因为我随后在追加程序中将其用作上下文。对于我的一生,我不明白为什么。

我什至查看了一个解决方案,该解决方案说这可能是由于冲突导致的赛车状况,并在等待适当的记录器工厂加载时做一会儿循环和睡眠,但这没有用。而且这是一个hack,而不是理想的解决方案。

pom.xml依赖项列表很大,因此,除非有一种简单的搜索方式,以查看哪些冲突正在发生,否则我无法想象尝试手动执行此操作...

任何建议将不胜感激。

0 个答案:

没有答案