我有一個庫,我最近「mavenized」並將其放入本地git存儲庫。
爲了鎖定一些插件版本,我創建了一個簡單的父pom,它通過pluginManagement(父pom文件不是簽入到任何SCM存儲庫中)來定義插件版本。我在我的庫文件中指定了父pom文件:maven發佈:執行和父pom
<parent>
<groupId>org.my.company</groupId>
<artifactId>superpom</artifactId>
<version>1</version>
</parent>
我使用默認的目錄結構。 當我嘗試使用發佈插件執行發佈時,遇到問題。然而
mvn release:prepare
運行正常,當我運行mvn release:perform
行家檢查了相應的標籤,從我的本地git倉庫到目標/結帳文件夾,並嘗試運行部署目標。
但是,構建失敗,並顯示錯誤消息,它無法找到我的庫pom文件中定義的父pom文件。
我認爲這與maven嘗試在目標文件夾中找到父文件夾並且在那裏不可用這一事實有關。
有沒有簡單的方法如何解決這個問題?
更新:
我有應該分享共同的公司父POM文件以指定插件版本的多個不相關的GWT庫。
父pom僅用於定義某些默認版本,並且不包含任何模塊定義,因爲所有GWT庫都不相關。
GWT的庫是非常簡單的,並沒有真正的依賴關係,從默認的除了任何其他庫(GWT,JUnit的)
UPDATE2: 我通過運行安裝superpom到我的本地庫解決了這個問題mvn install
在我的superpom的文件夾中。
父pom是否必須與我的庫在同一個VCS中? 我有幾個不相關的庫應該使用這個作爲父(公司)POM和他們每個人都在一個單獨的github存儲庫。我是否必須將父pom放入每個存儲庫? 對於圖書館的發佈,我是否只需要在父pom上調用發佈插件,或者我可以在圖書館的pom上進行發佈嗎? – 2011-12-14 15:00:01