您好,登錄后才能下訂單哦!
為了更清晰的設計以及更高的重用性,軟件設計人員旺旺會采用各種方式對軟件劃分模塊。在maven中使用繼承和聚合來簡化模塊的配置和操作。二者的異同如下:
1. 聚合模塊用來簡化項目的編譯打包等操作,可以通過直接操作聚合模塊,達到操作所有模塊的目的;繼承主要是為了簡化配置以及保存各個模塊的統一性,可以將公告的部分抽取出來放到父工程中,如依賴的版本,插件的設置以及其他擴展屬性的設置。
2. 需要單獨建立繼承和聚合模塊用了支撐聚合和繼承功能且該模塊的打包方式(packaging)都是pom。一般而言會將繼承和聚合放在同一個模塊中,用來同時提供聚合和繼承功能。
3. 為了實現通過聚合模塊操作所有子模塊,聚合模塊需要依賴各個子模塊,需要在聚合模塊的pom中通過modules指定子模塊的相對路徑;為了實現在子工程中使用父工程的配置,子工程需要依賴父工程,需要在子工程中強制指定父工程坐標及其路徑,通過parent標簽進行指定。另外如果一個工程沒有指定父工程,其默認指定超級pom(maven中頂級工程,相當于與java中的Object)。
4. 項目中的各個模塊最好有統一的groupId和統一的version。通過在父工程中指定groupId和version可以很容易些實現這一點。
5. 為了減少包沖突和插件的沖突,最好在父工程中指定包的版本和插件的設置。dependencyManagement和pluginManagement。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。