由于服务器环境及应用层各版本的不同、编码方式的不同因此会有很多种情况会出现乱码问题。
由于Jenkins中的job运行的是独立的一个shell环境,许多的环境变量与服务器中是不一样的,因此在job中执行的命令也就会有所差异。
因此可以在job中执行env命令,同时在服务器中执行env命令查看环境的异同点。
对于Jenkins中乱码问题,首先,确保Jenkins的容器如Glassfish,Tomcat的编码是正确的,已设置成如UTF-8编码。
若还有乱码,做如下尝试:
系统管理——系统设置,添加编码环境变量
言而总之:
控制台乱码原因在于服务器上的log文件编码非UTF-8
例如可以先查看当前job下builds/lastSuccessfulBuild/log 日志文件的编码方式
# file log //查看log编码方式
再查看jenkins中系统管理——系统信息里file.encoding系统变量的编码
若file.encoding系统变量编码非UTF-8,则将使log文件非UTF-8,因此导致乱码
Jenkins 的详细介绍:请点这里
Jenkins 的下载地址:请点这里