问题:job中 shell中存在中文导致报错,
去掉中文可以正常执行,排查应该是编码问题
FATAL: Unable to produce a script file
java.nio.charset.UnmappableCharacterException: Input length = 1
解决办法:
jvm需要增加-Dfile.encoding=UTF8 参数,保证支持中文字符
1、因为使用的Tomcat启动jenkins,因此在 tomcat/bin/catalina.sh 脚本中添加JAVA_OPTS 参数
随便找到个设置JAVA_OPTS的位置,在最后加上-Dfile.encoding=UTF8即可
bash
JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Xms1024m -Xmx1024m -Dfile.encoding=UTF8"
2、其他方法启动的道理是一样的,在启动命令里面加上**-Dfile.encoding=UTF8**
然后重启jenkins即可