本地python运行输出中文,Jenkins调用后输出乱码

转自:https://blog.csdn.net/gaimechen/article/details/78671679

注:Jenkins ver. 2.190.3,Win10,Python2.7.17

一、Jenkins修改:

1、进入jenkins -- 系统管理 -- 系统设置 -- 全局属性,勾选Environment variables ,键输入 LANG  值输入 zh_CN.UTF-8  保存

2、配置电脑系统环境变量,新增变量名:JAVA_TOOL_OPTIONS  变量值:-Dfile.encoding=UTF-8(注:有些博客说配在jenkins全局属性环境变量里,我试了不行,估计是jenkins版本、运行环境等各种因素导致取不到值)

3、配置电脑系统环境变量,新增变量名:PYTHONIOENCODING   变量值:UTF8(注:有些博客说配在jenkins全局属性环境变量里,我试了不行,估计是jenkins版本、运行环境等各种因素导致取不到值)

4、修改jenkins安装目录下jenkins.xml文件 ,在 中添加:-Dfile.encoding=utf-8
-Xrs -Xmx256m -Dfile.encoding=utf-8 -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war"

6、重启jenkins

7、进入系统管理--系统信息,查看file.encoding字段为 utf-8重新测试控制台输出中文,已经不是乱码

 

二、Python脚本修改:

如果本地运行都会出现非中文输出,修改如下:

#!/usr/bin/env python 
# -*- coding: utf-8 -*- 
import sys
reload(sys) 
sys.setdefaultencoding('utf-8')

str = '\xE5\x85'
print(str.decode('utf-8'))

 

你可能感兴趣的:(本地python运行输出中文,Jenkins调用后输出乱码)