slf4j日志只输出到控制台,没输出到日志文件

Posted __youlin__

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了slf4j日志只输出到控制台,没输出到日志文件相关的知识,希望对你有一定的参考价值。

最近使用SLF4J遇到了一个比较头疼的坑,日志输出到控制台没有问题,但是始终没有输出到日志文件。无论怎麽修改日志配置,始终是老样子。

有一种绝望,是各种百度、google却还是解决不了问题。。直到我在启动项目的时候发现了这样的提示,

    

SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/E:/Java/tp-wechat/webapps/wechat-hy/WEB-INF/lib/logback-classic-1.1.7.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/E:/Java/tp-wechat/webapps/wechat-hy/WEB-INF/lib/slf4j-log4j12-1.7.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [ch.qos.logback.classic.util.ContextSelectorStaticBinder]

嗯。。之前是发现了但是没重视,因为没发现warning or error,老夫就略过了,结果就悲剧了。还是自己太天真了,明明特意设置了控制台颜色

    

后面重视了,百度了一下,然后再进入http://www.slf4j.org/codes.html#multiple_bindings这里查看,上面明确给出了解决方案

    

看来就是酱了,SLF4J只能绑定一个唯一的日志框架,这里提示绑定了两个,并且列出了位置,只要排除掉一个即可,可以这样找到logback的引用

打开pom.xml

    

这里我排除了logback

    

重新启动项目发现问题,good,完美解决,not found

    

 

以上是关于slf4j日志只输出到控制台,没输出到日志文件的主要内容,如果未能解决你的问题,请参考以下文章

关于slf4j不能输出日志到文件,怎么解决

日志的介绍

log4j不输出日志

使用slf4j + log4j.properties 输出日志 到 控制台 和 执行文件

关于slf4j不能输出日志到文件,怎么解决

利用logback+slf4j日志采集整合到SBA