adr*_*lau 7 git jenkins jenkins-plugins
我最近尝试在Jenkins 1.546上安装Git userContent插件.重新启动Jenkins后发生以下错误:
hudson.util.HudsonFailedToLoad: org.jvnet.hudson.reactor.ReactorException: java.lang.Error: java.lang.reflect.InvocationTargetException
at hudson.WebAppMain$3.run(WebAppMain.java:234)
Caused by: org.jvnet.hudson.reactor.ReactorException: java.lang.Error: java.lang.reflect.InvocationTargetException
at org.jvnet.hudson.reactor.Reactor.execute(Reactor.java:269)
at jenkins.InitReactorRunner.run(InitReactorRunner.java:44)
at jenkins.model.Jenkins.executeReactor(Jenkins.java:908)
at jenkins.model.Jenkins.<init>(Jenkins.java:807)
at hudson.model.Hudson.<init>(Hudson.java:82)
at hudson.model.Hudson.<init>(Hudson.java:78)
at hudson.WebAppMain$3.run(WebAppMain.java:222)
Caused by: java.lang.Error: java.lang.reflect.InvocationTargetException
at hudson.init.TaskMethodFinder.invoke(TaskMethodFinder.java:109)
at hudson.init.TaskMethodFinder$TaskImpl.run(TaskMethodFinder.java:169)
at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282)
at jenkins.model.Jenkins$7.runTask(Jenkins.java:897)
at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:210)
at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at hudson.init.TaskMethodFinder.invoke(TaskMethodFinder.java:105)
... 8 more
Caused by: java.lang.NullPointerException
at hudson.plugins.git.GitSCM.onLoaded(GitSCM.java:1389)
... 13 more
Run Code Online (Sandbox Code Playgroud)
我尝试通过jenkins.war.bak恢复到Jenkins 1.544 ,但错误仍然存在.我不能再访问Jenkins了.有没有办法从中恢复,或者至少是一种不错的方式来重新安装Jenkins而不会丢失任何数据?
在我的情况下,这是因为我选择了git-client.jpi和git-server.jpi文件进行安装,但在Jenkins插件管理器下载之前,下载卡在数据库插件下载中.我重新启动了Jenkins,我认为Jenkins误认为尚未下载的git插件已经下载了.
要解决此问题,只需导航/var/lib/jenkins/plugins并删除导致问题的jpi文件.重启詹金斯和你的问题将得到解决.
当我从Jenkins禁用插件时,我遇到了同样的问题.
要删除此错误,我删除了部分禁用的插件,在我的情况下 credentials.jpi.disabled
遍历到 /var/lib/jenkins/plugins/
找到已禁用的文件,在我的例子中credentials.jpi.disabled,从插件目录中删除此文件.
重启Jenkins服务
服务jenkins重启
它工作了!!