一、問題詳情
jenkins構建mav任務,在控制台顯示亂碼:
二、原因分析
1. 查看系統編碼和tomcat的編碼都正常
# grep encoding /usr/local/tomcat/conf/server.xml <?xml version='1.0' encoding='utf-8'?> # locale LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL=
2. 查看jenkins-->系統管理-->系統信息--發現字符編碼不對,都是ANSI_X3.4-1968而不是UTF8導致的。
三、解決方法
1. 在jenkins-->系統管理-->系統設置-->添加環境變量-->重啟jenkins
鍵:JAVA_TOOL_OPTIONS 值:-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8
如下圖:
2. 如果不生效可以在系統中添加一條環境變量
export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"
重啟后發現恢復