一、问题详情
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"
重启后发现恢复