java打成jar包,在windows上運行出現亂碼


今天做項目的時候遇到一個很頭疼的問題——無論在Java代碼中如何統一編碼為UTF8,在IDE中運行是完全沒問題的,但打包成Jar通過Bash和CMD運行,都會出現中文亂碼問題。起初是覺得Java編譯時編碼出現了問題,但經過幾小時的排查,終於找到中文亂碼問題的根源——cmd/bash默認的編碼是GBK。

 

亂碼共有兩處:一處是控制台打印日志亂碼,另一處是返回數據到前台,亂碼。

解決:

控制台日志亂碼:

打開cmd,輸入以下命令

chcp 65001

這樣就可以更改cmd的編碼為UTF-8了。

數據結果亂碼:

運行時,指定編碼,啟動命令改為:

java -Dfile.encoding=utf-8 -jar cpw-0.0.1-SNAPSHOT.jar

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM