解決IDEA集成Docker插件后出現(xiàn)日志亂碼的問題
修改IDEA的vmoptions文件
找到IDEA安裝目錄的bin目錄,在idea.exe.vmoptions和idea64.exe.vmoptions文件中追加以下內(nèi)容:
-Dfile.encoding=utf-8
完成以上操作后,重啟IDEA即可。
2019-12-20更新
在新版本的IDEA中,可能還需要在菜單欄Help -> Edit Custom VM Options中追加以上內(nèi)容,IDEA會首先以該文件為準(zhǔn)。
補(bǔ)充知識:springboot 源碼閱讀之 logback-spring.xml 是在哪里加載的?

強(qiáng)制在 logback-spring.xml 中人為制造一個錯誤,然后啟動 springboot 工程,得到如下錯誤調(diào)用棧信息:

進(jìn)入 LogbackLoggingSystem.java 第 169行所在的方法 loadConfiguration打斷點(diǎn), debug 進(jìn)入此方法,發(fā)現(xiàn)此時傳入的參數(shù) location 已經(jīng)是 classpath:logback-spring.xml, 所以接下來在 AbstractLoggingSystem.initializeWithConventions 方法中打斷點(diǎn),debug進(jìn)入:

發(fā)現(xiàn)config 是在調(diào)用 getSpringInitializationConfig 之后被賦值為 classpath:logback-spring.xml 的,所以進(jìn)入 getSpringInitializationConfig:

進(jìn)入 getSpringConfigLocations:

getStandardConfigLocations 的方法體為:

返回一個寫死了幾個文件名的數(shù)組
locations[i] = locations[i].substring(0, locations[i].length() - extension.length() - 1) + "-spring." + extension
這句代碼的意思是 將上面數(shù)組中的每個文件名去掉 "點(diǎn)",去掉 后綴之后的文件名 和 -spring 和 .后綴 拼接一塊兒,
如將 logback.xml 變成 logback-spring.xml
以上這篇解決IDEA集成Docker插件后出現(xiàn)日志亂碼的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java中Stringbuild,Date和Calendar類的用法詳解
這篇文章主要為大家詳細(xì)介紹了Java中Stringbuild、Date和Calendar類的用法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下2023-04-04
java局部變量表的基礎(chǔ)知識點(diǎn)及實(shí)例
在本篇文章里小編給大家整理的是一篇關(guān)于java局部變量表的基礎(chǔ)知識點(diǎn)及實(shí)例,有需要的朋友們可以學(xué)習(xí)參考下。2021-06-06
Java實(shí)現(xiàn)并發(fā)執(zhí)行定時任務(wù)并手動控制開始結(jié)束
這篇文章主要介紹了Java實(shí)現(xiàn)并發(fā)執(zhí)行定時任務(wù)并手動控制開始結(jié)束,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05
關(guān)于easyExcel中讀取Excel表頭的實(shí)例說明
EasyExcel是阿里巴巴開源的一個excel處理框架,以使用簡單、節(jié)省內(nèi)存著稱,下面這篇文章主要給大家介紹了關(guān)于easyExcel中讀取Excel表頭的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-06-06

