IntelliJ Idea14 建立Maven多模組專案,多繼承,熱部署配置總結(一)

BothEyes1993發表於2019-06-02

一、專案結構

multi-module-parent是主工程,裡面包含兩個模組(Module):

在這裡插入圖片描述

module-web是應用層,用於介面展示,依賴於module-core參的服務。 module-core層是服務層,用於給web層提供服務。

跟java的package類似,一般是按照的功能模組分module,比如:sso/cas/portal/activity/system,具體可根據需要

在這裡插入圖片描述
以上兩種方式都可以,現在更多的應該是傾向第一種按照功能來解耦,module前期可以配置成jar,後期也可以建立獨有的頁面,獨立的站點,通過子域名的方式訪問,各個功能模組解耦,趨向微服務架構

二、構建專案

2.1 Parent Project

新建一個空白標準maven project(不要選擇Create from archetype選項)

在這裡插入圖片描述
填寫專案座標,得到一個標準的maven專案,因為該專案是作為一個Parent project存在的,可以直接刪除src資料夾(父檔案下只有自己的pom檔案和模組檔案)。
在這裡插入圖片描述

2.2 增加module-web模組(Module)

選擇從archetype建立(選擇webapp選項)

在這裡插入圖片描述
groupId和version繼承自Parent project,這裡只需要填寫artifactId即可。
在這裡插入圖片描述

注意:這裡Add as module to 有的人會刪除,如果刪除了建立的模組檔案就會和父模組(parent)同級了,這裡看個人喜歡。資料夾結構怎麼樣都行,重要的pom檔案裡面的父子結構要設定正確。

在這裡插入圖片描述

2.3增加module-core模組

用同樣的方法建立module-core模組(不過該模組是一個空白maven標準專案,不要從archetype建立)

在這裡插入圖片描述

2.4 得最終專案結構

在這裡插入圖片描述

2.5 關鍵幾點

1,Parent project和各個Module擁有獨立pom檔案 2,Parent project用於組織不同的Module,不實現邏輯 3,Module整合Parent project的groupId和version,Module只需要指定自己的artifactId即可。

三、新增專案依賴

在這裡插入圖片描述
在這裡插入圖片描述
上面的操作是新增web對core模組的依賴,完成上述操作後core中public的類已經在web模組中可見了,如果不加模組依賴,web下的jsp用不了core裡面的方法,會抱錯:
在這裡插入圖片描述

此外還需要在web的pom檔案中增加對core的依賴,這個主要是為了web裡面的Java模組呼叫core的服務:

在這裡插入圖片描述
以上,專案依賴的新增已經完成。

四、開始程式設計

4.1 module-core模組程式設計

在core模組中增加一個Service類(SimpleService.java):

在這裡插入圖片描述

4.2 module-web模組程式設計

修改web下的jsp檔案,呼叫core服務:

在這裡插入圖片描述

五、執行

在這裡插入圖片描述
在這裡插入圖片描述
如果想了解熱部署和繼承關係等配置請看: IntelliJ Idea14 建立Maven多模組專案,多繼承,熱部署配置總結(二)

專案demo地址:github.com/BothEyes199…

相關文章