[英]Maven - import / group all modules of project
我有一個帶有約20個子模塊的父項目:
<project>
<modules>
<module>module-1</module>
<module>...</module>
<module>module-20</module>
</modules>
</project>
我想將此項目作為一個單獨的實體使用,在其他項目中包括所有20個模塊。 在Maven中執行此操作的便捷方法是什么?
我是否應該制作一個導入其他20個模塊並參考該項目的新子模塊? 這應該是JAR還是POM項目?
<project>
<packaging>jar</packaging>
<dependencies>
<dependency>... module-1 ...</dependency>
<dependency>...</dependency>
<dependency>... module-20 ...</dependency>
</dependencies>
</project>
我認為您在問題中提到的方式是個好主意。 實際上,它是Maven最佳實踐中提到的內容 ,並引用:
如果您有一組依賴項,這些依賴項在邏輯上組合在一起。 您可以使用
pom
打包創建一個將依賴項分組在一起的項目。
您可以創建一個名為module-all
的新模塊,該module-all
將采用pom
封裝,它僅依賴於每個模塊。 包裝應該是pom
因為此模塊的主要工件只會是pom.xml
(將沒有編譯源,沒有JAR ...)。 然后,在您的外部項目中,您可以簡單地向此新模塊添加一個依賴項(如<type>pom</type>
),並且每個module-i
依賴項都將被可傳遞地包括在內。
如果您的所有模塊都不共享相同的版本,將會引起麻煩:需要引用特定模塊的特定版本,並且每次模塊的version
都必須更新module-all
version
變化。 但是,如果它們都共享相同的版本,則all module-all
發行周期將與module-i
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.