2012-06-19 45 views
8

我想通過聚合器構建模塊,但避免自己構建聚合器項目。在我的使用案例中,聚合器是一個虛擬包裝器,僅用於將構建組合在一起,並且作爲項目本身沒有任何意義在Maven中,我如何構建模塊,但不是聚合器項目本身?

是否有可能以某種方式從聚合器中移除聚合器?

+0

支撐始於沒有什麼打造一個POM項目。所以沒有什麼開銷。你真正的問題是什麼? –

+0

我正在構建自己的遞歸本地構建插件,它構建了一箇中間pom.xml,其中包含(遞歸)-SNAPSHOT內部依賴關係的模塊。我不希望封裝pom在日誌輸出中發揮作用,並將我的插件的用戶混淆 –

回答

11

AFAIK沒有辦法做到這一點。但我相信你真正的問題是,這個聚合器工件和其他模塊一起部署到遠程存儲庫,並且沒有意義,正如你所說的。我的建議則是在聚合的pom.xml設置<skip>true</skip>maven-deploy-plugin禁用它的部署,就像這樣:

<plugin> 
    <artifactId>maven-deploy-plugin</artifactId> 
    <configuration> 
    <skip>true</skip> 
    </configuration> 
</plugin> 

<version>2.4</version>裁判 deploy-mojo install-mojo

+0

謝謝,這很有用 –

+0

非常糟糕。不要這樣做!你的模塊依賴於他們的父母。如果某些客戶端會拉你的模塊,它將需要他們的父母。它不會工作,因爲父母不能從您的回購解決。除此之外,該插件的配置將被繼承。這樣的配置應該非常明智地完成。 –

+11

我們在這裏談論模塊的聚合器,而不是父類。聚合器通常==父母,但並不總是! –

相關問題