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

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

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

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

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

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

總結(jié)
到此這篇關(guān)于Java運行時jar終端輸出的中文日志亂碼兩種解決方式的文章就介紹到這了,更多相關(guān)運行jar終端輸出中文日志亂碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java更新調(diào)度器(update scheduler)的使用詳解
Java更新調(diào)度器是Java中的一個特性,可以自動化Java應(yīng)用程序的更新過程,它提供了一種方便的方式來安排Java應(yīng)用程序的更新,確保其與最新的功能、錯誤修復(fù)和安全補丁保持同步,本文將深入介紹如何使用Java更新調(diào)度器,并解釋它對Java開發(fā)人員和用戶的好處2023-11-11
基于Redis分布式鎖Redisson及SpringBoot集成Redisson
這篇文章主要介紹了基于Redis分布式鎖Redisson及SpringBoot集成Redisson,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小小伙伴可以參考一下2022-09-09
java.lang.IllegalArgumentException:Invalid character&nb
本文介紹了java.lang.IllegalArgumentException: Invalid character found異常的解決,方法包括檢查代碼中的方法名,使用合適的HTTP請求方法常量,使用第三方HTTP庫,檢查請求URL以及使用調(diào)試和日志工具,通過這些方法,我們可以解決異常并確保網(wǎng)絡(luò)應(yīng)用程序的正常運行2023-10-10
Java實現(xiàn)數(shù)字轉(zhuǎn)成英文的方法
這篇文章主要介紹了Java實現(xiàn)數(shù)字轉(zhuǎn)成英文的方法,涉及java數(shù)組與字符串的相關(guān)操作技巧,需要的朋友可以參考下2015-05-05

