基于logback.xml不生效問題的解決
logback.xml不生效問題
如果不確定logback.xml 不生效是否生效可以更改后面的root
把ALL改成OFF看是否還會(huì)打印日志,如果打印,證明配置沒有生效
原因1
logback配置文件沒有放在src目錄。
如果不知道放在哪里就在主程序運(yùn)行下列代碼找到路徑位置,在電腦中搜索改路徑將配置文件放在該路徑下:
// 獲取classpath路徑 String s = Thread.currentThread().getContextClassLoader().getResource("").getPath(); System.out.println("classpath => " + s ); // 獲取classpath路徑 String path = 這個(gè)是你的主函數(shù)名.class.getResource("/").toString(); System.out.println("classpath => " + path);
這樣就可以了!
原因2
如果原因1不行,也確定了配置文件再src下,那可能就是你的配置文件命名有問題,可以將配置文件命名改為logback.xml或者logback-test.xml也行。
這樣就OK咯。
logback.xml不能被加載,logback不能被執(zhí)行,logback.xml 無法生效,slf4j日志樣式輸出失敗
1. 原因
logback.xml 無法被加載, 嘗試了好久還是失敗,哎,最后新建工程竟然可以,所以說還是項(xiàng)目的問題;
原來項(xiàng)目依賴了兩個(gè)slf4j.jar,是版本沖突了;
2. 查找原因
idea Terminal 輸入: mvn dependency:tree
發(fā)現(xiàn)是com.baidu.aip 依賴了舊版本
mvn dependency:tree
3. 解決
<dependency> <groupId>com.baidu.aip</groupId> <artifactId>java-sdk</artifactId> <version>4.11.0</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> </exclusion> </exclusions> </dependency>
4. 其他參考
多依賴過濾
<--多依賴過濾--> <dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase</artifactId> <version>0.94.17</version> <exclusions> <exclusion> <groupId>*</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> </dependency>
問題排查
1. 檢查logback.xml 是否在resource目錄下, 名字是否錯(cuò)誤,后綴是否正確等;
2. 檢查引用jar包版本是否匹配
3. 檢查是否依賴過多slf4j.jar
4. 使用 mvn dependency:tree 查看maven依賴樹
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
23種設(shè)計(jì)模式(12)java模版方法模式
這篇文章主要為大家詳細(xì)介紹了23種設(shè)計(jì)模式之java模版方法模式,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-11-11Java實(shí)現(xiàn)AOP面向切面編程的實(shí)例教程
這篇文章主要介紹了Java實(shí)現(xiàn)AOP面向切面編程的實(shí)例教程,通常Java中的AOP都是利用Spring框架中造好的輪子來開發(fā),而本文則關(guān)注于Java本身AOP的設(shè)計(jì)模式實(shí)現(xiàn),需要的朋友可以參考下2016-04-04java實(shí)時(shí)監(jiān)控文件行尾內(nèi)容的實(shí)現(xiàn)
這篇文章主要介紹了java實(shí)時(shí)監(jiān)控文件行尾內(nèi)容的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-02-02Docker 解決openjdk容器里無法使用JDK的jmap等命令問題
這篇文章主要介紹了Docker 解決openjdk容器里無法使用JDK的jmap等命令問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12Spring boot2+jpa+thymeleaf實(shí)現(xiàn)增刪改查
這篇文章主要介紹了Spring boot2+jpa+thymeleaf實(shí)現(xiàn)增刪改查,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04Java與Oracle實(shí)現(xiàn)事務(wù)(JDBC事務(wù))實(shí)例詳解
這篇文章主要介紹了Java與Oracle實(shí)現(xiàn)事務(wù)(JDBC事務(wù))實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-05-05