MAVEN創建多模塊項目(水平與樹形結構)

       很久沒有寫過博客了,很多東西都在筆記裏面,沒有整理過。不太喜歡寫沒有經過自己消化和整理的知識,如果自己都沒有搞明白,那還是不要寫的好,免得誤導其他同學。

        這次寫的內容主要就是使用MAVEN創建多模塊的web項目,之前寫過一個SSM整合的博客,也是MAVEN創建的WEB項目,裏面的web/dao/service層使用的是package來隔離的,而企業級開發一般不是這麼做的,我們會將不同職能的模塊使用Maven裏面的module來進行劃分,從而每個模塊都可以單獨打出一個Jar包或者war包,可以自己使用,也可以提供出去。

       Maven可以創建兩種結構的多模塊項目,一個是水平結構,一個是樹形結構,下面看圖瞭解它們的區別:


              

       Storm項目就是樹形結構,而winter項目就是水平結構,那麼它們的區別在哪裏呢?其實就創建過程來說,沒有什麼區別,就是module的路徑修改一下就可以互相轉化了。不過,就體驗來說,個人覺得水平的更好,看起來更加的舒服一點。下面就來說一下如何創建這樣的一個工程,看完就會發現過程很簡單,知道這種模式就是打開了一個思路,並不是有多難。


本實驗環境:

      idea14 

     JDK7

     maven3.2.1


具體步驟:

1、首先創建一個父項目

      File->new-->project,選擇Maven,建立一個最普通的maven項目,生成的src根據需要保留,我這裏是刪掉了。注意:創建完成後需要檢查pom.xml,修改裏面的<packaging>標籤的value爲pom


2、右鍵創建好的winter父項目-->new-->module-->maven,這裏的創建過程就和上面的類似了,不過可以使用maven的archetype來創建,這樣就可以產生一個基本的maven項目結構,便於快速進入開發。(關於這個archetype我會再寫一個博客說一下,其中創建的時候還有坑...有時候會由於網速問題卡在一個地方不動彈...這裏就不囉嗦了。)


       下面這幅圖的創建路徑需要注意一下,這裏就是關係到了多模塊MAVEN項目結構的關鍵所在。如果這裏使用默認的地址,那麼產生的就是樹形結構的項目,如果將地址修改一下,module模塊與winter模塊放在一級目錄上就是水平結構了。

   樹形結構:

          /winter

          /winter/winter.biz

          /winter/winter.dal

   水平結構:

          /winter

          /winter.biz

          /winter.dal


3、根據自己的需要和項目架構,創建定義的模塊吧!!!!


優點:

      a、模塊隔離清晰

      b、不同模塊可以單獨打包,靈活部署

      c、隨着項目的變大,這種方式擴展性更好

缺點:

若架構的時候各模塊責任劃分不清,那麼不僅開發成本上升(相比較單一工程來說,這種在不同模塊間切換和查找代碼都會麻煩點),而且沒有相應的優點。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章