日韩精品欧美激情国产一区_中文无码精品一区二区三区在线_岛国毛片AV在线无码不卡_亞洲歐美日韓精品在線_使劲操好爽好粗视频在线播放_日韩一区欧美二区_八戒八戒网影院在线观看神马_亚洲怡红院在线色网_av无码不卡亚洲电影_国产麻豆媒体MDX

maven中的module的作用及聚合項目

時間:2022-11-12 10:25:47 類型:JAVA
字號:    

modules標(biāo)簽使用

<modules>
    <module>api-a</module>
    <module>api-b</module>
    <module>api-c</module>
</modules>

從字面意思來說,module就是模塊,而pom.xml中的modules也正是這個意思,用來管理同個項目中的各個模塊;如果maven用的比較簡單,或者說項目的模塊在pom.xml沒進行劃分,那么此元素是用不到的;不過一般大一點的項目是要用到的。


如果我們的項目分成了好幾個模塊,那么我們構(gòu)建的時候是不是有幾個模塊就需要構(gòu)建幾次了(到每個模塊的目錄下執(zhí)行mvn命令)?當(dāng)然,你逐個構(gòu)建沒問題,但是非要這么麻煩的一個一個的構(gòu)建嗎,那么簡單的做法就是使用聚合,一次構(gòu)建全部模塊。


什么是maven聚合項目


maven聚合項目也就是多模塊項目,(根據(jù)項目需求,把功能或服務(wù)劃分成不同的模塊進行開發(fā),子模塊繼承父類通過maven統(tǒng)一管理,聚合)


modules標(biāo)簽作用


maven聚合項目實例

1, 建立一個普通的maven Java工程(并刪除掉src文件夾)

     1.png

     2.png

   2, 建立子模塊child-a, child-b

      3.png

      注意:這里子模塊的父模塊為multi-module-deom

      4.png

  3,  最后 父模塊的pom.xml文件

       5.png 

      子模塊的pom.xml文件

        6.png


第三步:和普通的maven項目相比聚合項目有什么特點


和普通項目相比

        聚合項目的父類pom文件的packaging的值為pom

        在父類中有指向子類的元素

        在子類的pom中有有指向父類的元素,每個module的目錄結(jié)構(gòu)和一般的maven項目沒有區(qū)別

        在父類pom中添加的依賴在子pom中可以繼承。


各個module之間的關(guān)系是怎樣的


對于聚合模塊來說,它知道哪些被聚合的模塊,但那些被聚合的模塊不知道這個聚合模塊的存在。

對于繼承關(guān)系的父pom來說,它不知道有哪些子模塊繼承與它,但那些子模塊都必須知道自己的父pom是什么。


<