Java運(yùn)行時jar終端輸出的中文日志亂碼兩種解決方式
發(fā)現(xiàn)錯誤
運(yùn)行Jar時在控制臺輸出的中文日志全是亂碼,這是因?yàn)閏md/bash默認(rèn)的編碼是GBK,只要把cmd的編碼改成UTF-8即可

兩種方式修改:臨時修改和注冊表永久修改
臨時修改
只對當(dāng)前的cmd頁面有效,關(guān)閉后重新打開都會恢復(fù)成GBK,
打開cmd,輸入以下命令
chcp 65001
這樣既可以更改cmd的編碼為UTF-8了。
以下是常用的cmd編碼
字符編碼 | 對應(yīng)字符 |
GBK(默認(rèn)) | 936 |
美國英語 | 437 |
utf-8 | 65001 |
這時候我們可以將運(yùn)行Jar時,指定編碼參數(shù)
java -Dfile.encoding=utf-8 -jar project.jar
這時候已經(jīng)恢復(fù)正常了

為了方便也可以把修改編碼和運(yùn)行jar服務(wù)編寫成bat文件,下次直接點(diǎn)擊運(yùn)行
chcp 65001
java -Dfile.encoding=utf-8 -jar project.jar
永久修改
(1)win鍵+R,輸入regedit,確定
(2)按順序找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor

(3)點(diǎn)擊右鍵-新建,選擇“字符串值”,命名為“autorun”, 點(diǎn)擊右擊修改,數(shù)值數(shù)據(jù)填寫“chcp 65001”,確定

此時打開cmd已經(jīng)默認(rèn)是utf8了

也沒有出現(xiàn)亂碼情況

總結(jié)
到此這篇關(guān)于Java運(yùn)行時jar終端輸出的中文日志亂碼兩種解決方式的文章就介紹到這了,更多相關(guān)運(yùn)行jar終端輸出中文日志亂碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用IDEA創(chuàng)建SpringBoot項(xiàng)目
本文詳細(xì)介紹了使用SpringBoot創(chuàng)建項(xiàng)目,包含配置、啟動、開發(fā)環(huán)境配置等,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-12-12
SpringCloud?Gateway讀取Request?Body方式
這篇文章主要介紹了SpringCloud?Gateway讀取Request?Body方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03
Springboot實(shí)現(xiàn)密碼的加密解密
這篇文章主要為大家詳細(xì)介紹了Springboot實(shí)現(xiàn)密碼的加密解密,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-11-11
Spring Security使用Lambda DSL配置流程詳解
Spring Security 5.2 對 Lambda DSL 語法的增強(qiáng),允許使用lambda配置HttpSecurity、ServerHttpSecurity,重要提醒,之前的配置方法仍然有效。lambda的添加旨在提供更大的靈活性,但是用法是可選的。讓我們看一下HttpSecurity的lambda配置與以前的配置樣式相比2023-02-02
Spring?Boot實(shí)現(xiàn)配置文件的自動加載和刷新功能
這篇文章我們介紹了Spring?Boot如何實(shí)現(xiàn)配置文件的自動加載和刷新,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧2023-05-05
Java基礎(chǔ)之多線程方法狀態(tài)和創(chuàng)建方法
Java中可以通過Thread類和Runnable接口來創(chuàng)建多個線程,下面這篇文章主要給大家介紹了關(guān)于Java基礎(chǔ)之多線程方法狀態(tài)和創(chuàng)建方法的相關(guān)資料,需要的朋友可以參考下2021-09-09
Java使用設(shè)計模式中的工廠方法模式實(shí)例解析
當(dāng)系統(tǒng)準(zhǔn)備為用戶提供某個類的子類的實(shí)例,又不想讓用戶代碼和該子類形成耦合時,就可以使用工廠方法模式來設(shè)計系統(tǒng).工廠方法模式的關(guān)鍵是在一個接口或抽象類中定義一個抽象方法,下面我們會具體介紹Java使用設(shè)計模式中的工廠方法模式實(shí)例解析.2016-05-05

