1. 程式人生 > >聚合和繼承的定義詳解

聚合和繼承的定義詳解

聚合:

為什麼要用聚合:

我們會想要一次構建兩個或兩個以上的專案,而不是到兩個模組或是多個模組的目錄下分別執行mvn命令。Maven聚合(或者稱為多模組)這一特性就是為該需求服務的。

繼承:

為什麼要使用繼承:

pom.xml裡面的配置,如果是多個專案,勢必會出現依賴和外掛的重複配置。在面向物件世界中,程式設計師可以使用類繼承在一定程度上消除重複,在Maven的世界中,也有類似的

機制能讓我們抽取出重複的配置,這就是pom的繼承

聚合和繼承的關係:

多模組Maven專案中的聚合與繼承其實是兩個概念,其目的完全是不同的。前者是為了方便快速構建專案,後者是為了消除重複配置。

對於聚合模組來說,他知道有哪些被聚合的模組,但是那些被聚合的模組不知道這個聚合模組的存在

對於繼承關係的父POM來說,他不知道有哪些子模組繼承於它,但哪些子模組都必須知道自己的父POM是什麼

如果非要說這個兩個特性的共同點,那麼可以看到,聚合POM與繼承關係中的父POM的packaging都必須是pom,同時,聚合模組與繼承關係的父模組除了POM之外都沒有實際的內容。