一、问题详情
jenkins构建mav任务,在控制台显示乱码:
二、原因分析
查看系统编码和tomcat的编码都正常
grep encoding /usr/local/tomcat/conf/server.xml
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=
查看jenkins-->系统管理-->系统信息--发现字符编码不对,都是ANSI_X3.4-1968而不是UTF8导致的。
三、解决方法
在jenkins-->系统管理-->系统设置-->添加环境变量-->重启jenkins
键:JAVA_TOOL_OPTIONS
值:-Duser.timezone=Asia/Shanghai -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8
如下图:
如果不生效可以在系统中添加一条环境变量
export JAVA_TOOL_OPTIONS="-Duser.timezone=Asia/Shanghai -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8"
我是直接增加到/etc/profile下的
重启jenkins后发现恢复