Jenkins throwing error: jenkins.model.InvalidBuildsDir: ${ITEM_ROOTDIR}/builds does not exist and probably cannot be created
Jenkins throwing error: jenkins.model.InvalidBuildsDir: ${ITEM_ROOTDIR}/builds does not exist and probably cannot be created
我在 Ubuntu 上从 apt 命令行更新了 Jenkins,我在更新后立即执行了 sudo apt upgrade jenkins 我得到这个:
jenkins.model.InvalidBuildsDir: ${ITEM_ROOTDIR}/builds does not exist and
probably cannot be created
at jenkins.model.Jenkins.checkRawBuildsDir(Jenkins.java:3085)
at jenkins.model.Jenkins.loadConfig(Jenkins.java:3009)
Caused: java.io.IOException
at jenkins.model.Jenkins.loadConfig(Jenkins.java:3012)
at jenkins.model.Jenkins.access00(Jenkins.java:304)
at jenkins.model.Jenkins.run(Jenkins.java:3104)
at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run
(TaskGraphBuilder.java:169)
at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:296)
at jenkins.model.Jenkins.runTask(Jenkins.java:1068)
at org.jvnet.hudson.reactor.Reactor.run(Reactor.java:214)
at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
at java.util.concurrent.ThreadPoolExecutor.runWorker
(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run
(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused: org.jvnet.hudson.reactor.ReactorException
at org.jvnet.hudson.reactor.Reactor.execute(Reactor.java:282)
at jenkins.InitReactorRunner.run(InitReactorRunner.java:48)
at jenkins.model.Jenkins.executeReactor(Jenkins.java:1102)
at jenkins.model.Jenkins.<init>(Jenkins.java:904)
at hudson.model.Hudson.<init>(Hudson.java:85)
at hudson.model.Hudson.<init>(Hudson.java:81)
at hudson.WebAppMain.run(WebAppMain.java:233)
Caused: hudson.util.HudsonFailedToLoad
at hudson.WebAppMain.run(WebAppMain.java:250)
当 $JENKINS_HOME/jobs
目录的权限或所有权不正确时,我遇到过这种情况。在我的具体情况下,我将 rsync 作业同步到测试服务器,但忘记更新文件所有权以匹配 Jenkins 在测试系统上运行的用户。将所有权更改为正确的用户解决了该问题。
发生此错误的原因可能有很多,但我首先会检查 $JENKINS_HOME
下的文件和目录,以验证用户 运行 Jenkins 进程可以读取和读取写信给他们。
刚刚找到解决方案。更新后,Jenkins 主目录中有 ubuntu
和 jenkins
所有者的乱七八糟的文件。我刚刚将所有人的所有权更改回 jenkins
:
sudo chown -R jenkins:jenkins $JENKINS_HOME
我在 Ubuntu 上从 apt 命令行更新了 Jenkins,我在更新后立即执行了 sudo apt upgrade jenkins 我得到这个:
jenkins.model.InvalidBuildsDir: ${ITEM_ROOTDIR}/builds does not exist and
probably cannot be created
at jenkins.model.Jenkins.checkRawBuildsDir(Jenkins.java:3085)
at jenkins.model.Jenkins.loadConfig(Jenkins.java:3009)
Caused: java.io.IOException
at jenkins.model.Jenkins.loadConfig(Jenkins.java:3012)
at jenkins.model.Jenkins.access00(Jenkins.java:304)
at jenkins.model.Jenkins.run(Jenkins.java:3104)
at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run
(TaskGraphBuilder.java:169)
at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:296)
at jenkins.model.Jenkins.runTask(Jenkins.java:1068)
at org.jvnet.hudson.reactor.Reactor.run(Reactor.java:214)
at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
at java.util.concurrent.ThreadPoolExecutor.runWorker
(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run
(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused: org.jvnet.hudson.reactor.ReactorException
at org.jvnet.hudson.reactor.Reactor.execute(Reactor.java:282)
at jenkins.InitReactorRunner.run(InitReactorRunner.java:48)
at jenkins.model.Jenkins.executeReactor(Jenkins.java:1102)
at jenkins.model.Jenkins.<init>(Jenkins.java:904)
at hudson.model.Hudson.<init>(Hudson.java:85)
at hudson.model.Hudson.<init>(Hudson.java:81)
at hudson.WebAppMain.run(WebAppMain.java:233)
Caused: hudson.util.HudsonFailedToLoad
at hudson.WebAppMain.run(WebAppMain.java:250)
当 $JENKINS_HOME/jobs
目录的权限或所有权不正确时,我遇到过这种情况。在我的具体情况下,我将 rsync 作业同步到测试服务器,但忘记更新文件所有权以匹配 Jenkins 在测试系统上运行的用户。将所有权更改为正确的用户解决了该问题。
发生此错误的原因可能有很多,但我首先会检查 $JENKINS_HOME
下的文件和目录,以验证用户 运行 Jenkins 进程可以读取和读取写信给他们。
刚刚找到解决方案。更新后,Jenkins 主目录中有 ubuntu
和 jenkins
所有者的乱七八糟的文件。我刚刚将所有人的所有权更改回 jenkins
:
sudo chown -R jenkins:jenkins $JENKINS_HOME