logback 日志不输出到指定文件

在使用logback作为日志输出的时候,会遇到日志并没有按照logback.xml中的配置进行输出,出现这一问题的原因,有如下可能。


-原因1:与log4j的jar包冲突
采用logback作为日志输出时,需要包含如下依赖:

<dependency>
    <groupId>ch.qos.logbackgroupId>
    <artifactId>logback-coreartifactId>
    <version>1.1.2version>
dependency>

<dependency>
    <groupId>ch.qos.logbackgroupId>
    <artifactId>logback-classicartifactId>
    <version>1.1.2version>
dependency>

<dependency>
    <groupId>org.slf4jgroupId>
    <artifactId>slf4j-apiartifactId>
    <version>1.7.6version>
dependency>

不能包含如下依赖,如果加入该依赖,会导致日志都输出到log4j的日志文件中

<dependency>
    <groupId>org.slf4jgroupId>
    <artifactId>slf4j-log4j12artifactId>
    <version>1.7.25version>
dependency>

-原因2:多个logback.xml文件
由于引入的第三方包中带有logback.xml文件,而导致logback有多份配置,而出现日志输出不正常的情况。
这种情况下,可以通过控制台输出日志,查看logback.xml文件都来自哪些,然后看是否能够排除掉,如果无法排除,则可以通过java启动时,指定logback.xml的文件路径来解决

java -Dlogback.configurationFile=./conf/logback.xml

你可能感兴趣的:(Java,logback)