解決SpringBoot log4j日志沒生成的問題
SpringBoot log4j日志沒生成
從同事那接了一個腳手架,啟動后發(fā)現(xiàn)日志文件沒生成。
都知道SpringBoot默認帶的logback,如果要用log4j需要把logback的依賴去掉。
看了下工程的pom.xml文件,確實是有加去掉spring-boot-starter-logging的聲明。
<exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions>
那怎么就死活不生成日志呢。
倒騰了好幾次,無意中看到控制臺最上面的輸出:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/D:/Users/xxx/.m2/repository/ch/qos/logback/logback-classic/1.1.11/logback-classic-1.1.11.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/D:/Users/xxx/.m2/repository/org/slf4j/slf4j-log4j12/1.7.25/slf4j-log4j12-1.7.25.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]
說的是SLF4J依賴沖突,然后最后用例logback的。摔,難怪log4j日志一直沒生成。谷歌了一下,找到了解決辦法。
修改pom.xml,加入以下代碼把logback的依賴去掉。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <exclusions> <exclusion> <artifactId>logback-classic</artifactId> <groupId>ch.qos.logback</groupId> </exclusion> <exclusion> <artifactId>log4j-over-slf4j</artifactId> <groupId>org.slf4j</groupId> </exclusion> </exclusions> </dependency>
spring boot啟動失敗不輸出日志
spring boot啟動失敗,沒有任何錯誤日志輸出,只輸出了如下信息:
可能的原因:
1、日志配置文件沒有配好
解決:修改日志等級,找到logback-boot.xml文件,找到<root level="INFO"> </root>,修改日志等級,添加標準輸出
<root level="INFO"> <appender-ref ref="STDOUT"/> </root>
如果自己沒有寫日志配置,可能是被其他jar包中的log配置文件覆蓋了你本地的默認的日志。
解決辦法:編寫自己的日志配置文件或者排除一下資源文件。
2、jar沖突
3、idea本地緩存導致的失敗
這個是我遇到的情況,莫名其妙,前一天晚上還好好的,第二天突然就啟動不了,什么都不輸出,還是只顯示下面這圖
此時可以嘗試執(zhí)行mvn clean命令,清除target目錄下的之前打好的jar包或者是war包。
當然,也可以嘗試這樣,然后重新build。
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
spring 自動注入AutowiredAnnotationBeanPostProcessor源碼解析
這篇文章主要介紹了spring自動注入AutowiredAnnotationBeanPostProcessor源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-03-03Bean?Searcher配合SpringBoot的使用詳解
這篇文章主要介紹了Bean?Searcher配合SpringBoot的使用,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-06-06SpringMVC對自定義controller入參預處理方式
這篇文章主要介紹了SpringMVC對自定義controller入參預處理方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-09-09