2015-10-14 48 views
0

我的系統的版本下面的「目標和選項」:詹金斯Maven項目忽略了項目規定的「建設」一節

  • 詹金斯版本。 1.633
  • 版本的Ubuntu LTS 14.04.2
  • Maven版本3.0.5

我已經配置下的 「管理詹金斯」 Maven的設置 - > 「系統配置」。

當我在「預備步驟」部分創建「調用頂級Maven目標」步驟時,所有步驟均按預期工作。在「目標」行,我可以指定「-X」,「全新安裝」等,並通過行家例如印刷拿起這個目標了:

[DEBUG] Reading global settings from .../settings.xml

[DEBUG] Reading user settings from .../settings.xml

[DEBUG] Using local repository at .../repository

當我設置了同樣的目標(例如-X )在「生成部分」的「目標和選項」輸入字段我只得到以下詹金斯控制檯輸出:

Parsing POMs ERROR: Failed to parse POMs org.apache.maven.project.ProjectBuildingException: Some problems were encountered while processing the POMs: [FATAL] Non-resolvable parent POM: Failure to find nl.icscards:ics-build-parent:pom:1.1.8 in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced and 'parent.relativePath' points at wrong local POM @ line 6, column 10

at org.apache.maven.project.DefaultProjectBuilder.build(DefaultProjectBuilder.java:364) at hudson.maven.MavenEmbedder.buildProjects(MavenEmbedder.java:361) at hudson.maven.MavenEmbedder.readProjects(MavenEmbedder.java:331) at hudson.maven.MavenModuleSetBuild$PomParser.invoke(MavenModuleSetBuild.java:1301) at hudson.maven.MavenModuleSetBuild$PomParser.invoke(MavenModuleSetBuild.java:1098) at hudson.FilePath.act(FilePath.java:991) at hudson.FilePath.act(FilePath.java:969) at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.parsePoms(MavenModuleSetBuild.java:960) at hudson.maven.MavenModuleSetBuild$MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:679) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:537) at hudson.model.Run.execute(Run.java:1741) at hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:531) at hudson.model.ResourceController.execute(ResourceController.java:98) at hudson.model.Executor.run(Executor.java:408) Finished: FAILURE

我希望通過指定「-X」什麼是得到一些調試信息以同樣的方式就像我在調用「調用頂級Maven目標」時所做的那樣,像上面顯示的預構建步驟一樣。

也請注意,每件事都如預期的那樣好,如果我創建了一個「自選動作項目」,而不是「Maven項目」,並執行相應表單

cd <job_workspace> mvn -X clean install

同樣在此的外殼聲明我可以看到預期的輸出。

任何關於我的「Maven項目」jenkins配置中可能出現錯誤的建議? 在此先感謝您的回覆。

回答

0

原來,問題是maven找不到父項目,這是項目的外部依賴項。

奇怪的是,Maven Jenkins項目甚至在maven可以打印調試信息(如jenkins控制檯上使用的設置文件)之前試圖獲得這些依賴關係。因此它失敗了,但很難猜測問題是什麼。我認爲它無法選擇正確的存儲庫路徑或正確的settings.xml文件。

在我的情況的問題是,在資源庫父POM依賴我有一個文件

parent.pom.lastUpdated 

其中包含一個行:

http\://<private-VPN-host>/repo/repo-central/.lastUpdated=1439803113007 

從詹金斯服務器我不有權訪問私有VPN主機,因此失敗。刪除該文件或上述行解決了問題。 依賴關係比正確拾取和Maven項目正確構建。