Failed to create a temp file - Jenkins 无法创建任务

近日,突然发现任务集群的jenkins异常退出了,没有任何的迹象。后来排查到jenkins的job的日志后,找到了以下错误日志。

Started by user unknown or anonymous
Running as SYSTEM
Building in workspace /Users/xxxxx/work/jenkins2/jenkins_home/workspace/xxxx_1731652075874
FATAL: Unable to produce a script file
Also:   java.nio.charset.UnmappableCharacterException: Input length = 1
		at java.base/java.nio.charset.CoderResult.throwException(CoderResult.java:275)
		at java.base/sun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:307)
		at java.base/sun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:282)
		at java.base/sun.nio.cs.StreamEncoder.write(StreamEncoder.java:132)
		at java.base/java.io.OutputStreamWriter.write(OutputStreamWriter.java:205)
		at java.base/java.io.BufferedWriter.flushBuffer(BufferedWriter.java:120)
		at java.base/java.io.BufferedWriter.close(BufferedWriter.java:268)
		at hudson.FilePath$CreateTextTempFile.invoke(FilePath.java:1650)
java.nio.charset.UnmappableCharacterException: Input length = 1
	at java.base/java.nio.charset.CoderResult.throwException(CoderResult.java:275)
	at java.base/sun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:307)
	at java.base/sun.nio.cs.StreamEncoder.implWrite(StreamEncoder.java:282)
	at java.base/sun.nio.cs.StreamEncoder.write(StreamEncoder.java:132)
	at java.base/java.io.OutputStreamWriter.write(OutputStreamWriter.java:205)
	at java.base/java.io.BufferedWriter.flushBuffer(BufferedWriter.java:120)
	at java.base/java.io.BufferedWriter.write(BufferedWriter.java:233)
	at java.base/java.io.Writer.write(Writer.java:249)
	at hudson.FilePath$CreateTextTempFile.invoke(FilePath.java:1651)
	at hudson.FilePath$CreateTextTempFile.invoke(FilePath.java:1622)
	at hudson.FilePath.act(FilePath.java:1192)
	at hudson.FilePath.act(FilePath.java:1175)
	at hudson.FilePath.createTextTempFile(FilePath.java:1616)
Caused: java.io.IOException: Failed to create a temp file

经过一番查找后,才发现是jenkins的一个bug引起,且可以通过增加Java Opts的一个文件编码的命令行参数解决:

-Dfile.encoding=UTF8

nohup java $SERVICE_OPTS -Dfile.encoding=UTF8  -jar $HOME/work/jenkins2/jenkins.war --httpPort=8080 > jenkins.log 2>&1 &
相关推荐
graceyun8 分钟前
C语言进阶习题【1】指针和数组(4)——指针笔试题3
android·java·c语言
我科绝伦(Huanhuan Zhou)12 分钟前
Linux 系统服务开机自启动指导手册
java·linux·服务器
旦沐已成舟1 小时前
K8S-Pod的环境变量,重启策略,数据持久化,资源限制
java·docker·kubernetes
S-X-S1 小时前
项目集成ELK
java·开发语言·elk
Ting-yu1 小时前
项目实战--网页五子棋(游戏大厅)(3)
java·java-ee·maven·intellij-idea
程序研6 小时前
JAVA之外观模式
java·设计模式
计算机学姐6 小时前
基于微信小程序的驾校预约小程序
java·vue.js·spring boot·后端·spring·微信小程序·小程序
黄名富6 小时前
Kafka 日志存储 — 日志索引
java·分布式·微服务·kafka
m0_748255026 小时前
头歌答案--爬虫实战
java·前端·爬虫
小白的一叶扁舟7 小时前
深入剖析 JVM 内存模型
java·jvm·spring boot·架构