在 IntelliJ IDEA 中,沒有類似於 Eclipse 工作空間(Workspace)的概念,而是提出了Project和Module這兩個概念。
在 IntelliJ IDEA 中Project
是最頂級的結構單元,然后就是Module
,一個Project
可以有多個Module
。目前,主流的大型項目結構基本都是多Module
的結構,這類項目一般是按功能划分的,比如:user-core-module、user-facade-module 和 user-hessian-module 等等,模塊之間彼此可以相互依賴。通過這些Module
的命名可以看出,她們都是處於同一個項目中的模塊,彼此之間是有着不可分割的業務關系的。
因此,咱們可以大致總結出:一個Project
是由一個或多個Module
組成,盡量讓各模塊處於同一項目之中,此時彼此之間具有互相依賴的關聯關系。在這里,之所以說“盡量”,是因為 IntelliJ IDEA 的Project
是一個沒有具備任何編碼設置、構建等開發功能的,主要起到一個項目定義、范圍約束、規范類型的效果,或許,咱們也可以簡單地理解Project
就是一個單純的目錄,只是這個目錄在命名上必須有其代表性的意義。在一般情況下,IntelliJ IDEA 是默認單Project
單Module
的,這時Project
和Module
合二為一,在沒有修改存儲路徑的時候,顯然Project
對Module
具有強約束作用啦!不過說實話,這里就是將Module
的內容放在了Project
的目錄下,實際上還是Module
自己約束自己。
所以idea中的Project相當於Eclipse中的Workspace,Module相當於Eclipse中的project。
對於多級的maven父子嵌套中需要注意每次都是在父類的上面選擇新建module,並且新建的module的存儲路徑是在父類路徑下面新建一個文件夾。尤其在多層嵌套中更要注意。
創建最高級父類
創建zkparent的子類--zkmanager
注意:idea中添加module時都沒有指定打包類型,默認是jar,對於聚合模塊的要手動添加打包類型<packaging>,還有war和pom兩種類型.war是用來發布的,pom是聚合模塊,聚合模塊一般只是用來管理下面的模塊的,可以實現一次編譯和打包所有下面的模塊的作用,一般聚合模塊里面應該有一個war類型的module,便於進行部署.
在子聚合模塊下面再次添加子模塊,這里添加時遇到了新添加的子模塊的保存路徑沒有添加,導致在idea中顯示不出來新增的子模塊.
應該改為下面的地址
添加完成后,可以查看pom中的module