2013-05-08 33 views
0

我是使用Maven和Nexus的新手。maven-surefire-plugin:pom:2.9從Nexus存儲庫中丟失

我在一臺Unix主機上爲我的項目安裝了Maven,另一臺Unix主機上安裝了Nexus存儲庫。我已將Maven設置配置爲在另一臺機器上使用Nexus存儲庫。它似乎工作正常,所需的工件/插件從Nexus存儲庫中下載。但是名爲org.apache.maven.plugins:maven-surefire-plugin:pom:2.9的插件似乎從Nexus存儲庫中丟失。我手動檢查了Nexus存儲庫,並且該maven-surefire-plugin-2.9.jar文件不存在,儘管此插件的以前版本和新版本都存在。

現在問題似乎是Nexus無法連接到Internet,因此我必須手動將此jar文件與其他版本一起手動複製到公共存儲庫中的必需位置。

有人可以告訴我這樣做的步驟?我已經從互聯網下載了jar和它的pom文件,但我不知道如何將它放在Nexus所需的位置。

+0

爲了簡短起見...... Nexus是代理服務器,因此您需要至少能夠代理Central Repository。如果需要的話,你需要通過在代理服務器上將其列入白名單,或者其他任何東西,將它連接到互聯網。 – 2013-05-09 05:17:39

回答

0

這將變成一個無盡的故事,將所有工件手動放入Nexus中。存儲庫代理的目的是檢索它們並緩存它們。如果它沒有互聯網接入,使它有點工作強烈,而不是簡化生活。

我該怎麼做:在有互聯網訪問權限的機器上執行mvn clean install dependency:go-offline,然後將本地存儲庫複製到nexus發行版或thridparty存儲庫,並讓它通過web-gui重新索引。

這似乎是最簡單的方法。在nexus gui中有一個上傳功能,但是如果你通過神器完成那件需要一週的神器...

因爲nexus存儲結構與您在本地看到的1:1相同,所以您可以複製目錄結構。

+0

如果您不使用搜索UI,則不需要重新索引。但是,在將工件複製到存儲庫後,應該運行重建該存儲庫的Maven元數據的任務。 – nabcos 2013-05-08 14:54:21

+0

嗨,感謝您的及時響應!很多appriciated! 我已經在我的本地機器上編譯了這個項目,它有互聯網連接,所以現在我有本地存儲庫與我..所以下一步是什麼?複製nexus主機文件系統中的存儲庫? – 2013-05-08 16:15:24

+0

是的。 nexus在運行nexus的用戶的主目錄中創建一個「sonatype-work」目錄。有存儲庫(每個存儲庫一個文件夾)。您可以將您的本地存儲庫複製到發行版存儲庫中。確保文件夾結構是正確的。 – wemu 2013-05-08 22:26:12