2014-11-05 47 views
0

我正在使用Maven構建一個Java項目。由於我需要添加一個尚未在中央Maven存儲庫(OpenCV)上部署的jar文件,因此我在第一臺名爲M1的計算機上創建了一個本地存儲庫,並將外部jar文件lib.jar部署到該存儲庫中(mvn deploy:deploy-file)。Maven本地庫,兩臺機器和Git:缺失神器

在項目pom.xml文件添加以下行:

<repositories> 
    <repository> 
    <id>in-project</id> 
    <name>In Project Repo</name> 
    <url>file://${project.basedir}/libs</url> 
    </repository> 
</repositories> 

在機器M1一切都很好。

我用git無論是版本和在兩臺不同的機器,M1M2(我不認爲這是相關的,但M1有OS X和M2具有Linux)的同步兩種開發環境。

然而,在M2一個git pull後,如果我上M2運行Maven,我得到由來自本地回購缺少神器lib.jar錯誤消息。

M1 has maven 3.2.2,M2 has maven 3.0.4。

有什麼辦法可以使用git或其他軟件來移動本地存儲庫嗎?

謝謝。

+0

順便說一句,你可能也必須複製opencv_java.so,太! – berak 2014-11-06 10:46:59

+0

它是項目資源之一。 – 2014-11-06 14:34:00

回答

0

解決方案是創建一個遠程回購,而不是本地回購:

  • 設置一個Sonatype的Nexus設備或Jfrog Artifactory的實例
  • 上傳您的罐子到它
  • 編輯您的settings.xml文件,以反映它

這將允許你運行的任何maven build來檢索jar而不管機器。