1. 程式人生 > >搭建maven多模組工程

搭建maven多模組工程

搭建maven多模組工程

一、概要

作業系統:win7

變成語言:java

web容器:tomcat

IDE工具:STS(Spring Tool Suite)

專案管理工具:maven

搭建環境:

1、安裝jdk

一鍵式安裝,下一步下一步即可

安裝完畢配置環境變數:JAVA_HOMECLASSPATHPATH

測試:win+R執行,cmd開啟命令視窗,測試javajavacjava -version

2、安裝tomcat

綠色版,解壓縮到本地目錄即可

測試:%TOMCAT_HOME%/bin目錄下雙擊startup.bat啟動tomcat,瀏覽器位址列輸入網址

3、安裝maven

綠色版,解壓縮到本地即可

配置:

1、如果用預設倉庫,則將%MAVEN_HOME%/conf/settings.xml複製到C:\Users\Administrator\.m2\

目錄下

2、如果想自定義maven倉庫位置,則建立%MAVEN_HOME%/repo資料夾作為倉庫(在哪裡建立 倉庫檔案都行,我說的位置是個人習慣而已)

配置settings.xml檔案,如下程式碼所示,標紅的位置為自定義maven倉庫的路徑

<!-- localRepository

   | The path to the local repository maven will use to store artifacts.

   |

   | Default: ${user.home}/.m2/repository

  <localRepository>/path/to/local/repo</localRepository>

  -->

 <localRepository>D:/apache-maven-3.2.1/repo</localRepository>

4、安裝STS

綠色版,解壓縮到本地即可,下圖位置點選STS.exe啟動程式


配置1:開啟STS.ini檔案配置jvm,具體引數設定多少,視情況而定


配置2:啟動STS

Window/Preferences/General/Workspace


Window/Preferences/Java/Complier


window/Preferences/Java/Installed JREs


window/Preferences/Maven


window/Preferences/Maven/Installations


window/Preferences/Maven/User Settings

如果是自定義maven倉庫,則User Settings修改為%MAVEN_HOME%/conf/settings.xml,倉庫位置我們之前

setting.xml中已經配置過了,Local Repository會自動讀取settings.xml中配置的倉庫路徑


window/Preferences/Server/Runtime Environments


點選No servers...這個位置,建立Server


雙擊P1位置,開啟tomcat配置頁面,修改幾項重要配置

P2位置:修改啟動時間,預設時間太短了容易啟動超時

P3位置:選擇第二項,Server path選擇tomcat實際安裝目錄,不使用預設的位置,不好找

P4位置:如果需要修改埠,則在這裡修改


基本上配置這些就可以玩耍了^^

二、建立maven多模組工程

下面的文章中涉及到幾個名詞(不是標準的名詞,也不是標準的解釋,純個人理解):

父工程:是一個虛擬的工程,不能單獨執行,它把子模組和子工程糅合在一起。父工程的pom.xml中的配置,子 模組、子工程都繼承。

子模組:將子工程們的一些通用功能提取出來形成的模組,相當於jar包。不能單獨執行,子工程可以在pom.xml 中類似配置jar包的方式來選擇使用。

子工程:一個大的工程,可以拆分成多個小工程,每個小工程來完成部分業務功能,並且能夠獨立部署執行。而這 些小工程通過pom.xml配置,有著共同的父工程,從而成為一個整體。這樣的小工程就是子工程。

1、建立父工程




刪掉src資料夾,如下圖所示:


pom.xml檔案目前是這個樣子的:


我們修改一下pom.xml


2、建立子模組

在工程上右鍵,新增maven模組:


模組命名為mr-core


mr-core是要儲存一下公用資源的模組,不需要直接執行,所有選擇maven-archetype-quickstart


Gourp Id保持與父工程一致,改成mr


點選finish,子模組mr-core建立完成,如下圖所示:

PS:筆者在操作到這一步,經常會失敗,父子工程都報錯,並且父工程的pom檔案中只剩下modelVersion標籤了,其他配置都沒了,

不知道怎麼回事,有知道怎麼回事的童鞋請留言告訴我,O(∩_∩)O謝謝!


goupIdversionproperties是繼承自父工程的,所以我們把重複的東西都去掉:


再看看父工程的pom.xmlmodules中自動增加了mr-core的關聯:


再新增兩個子模組mr-logicmr-module,經過多次失敗和反覆修改,最後成功了,如下圖所示:



3、建立子工程

在工程右鍵,建立一個子工程mr-platform-admanager(管理員平臺)


子工程是要部署在tomcat伺服器的web工程,所以選擇maven-archetype-webapp


在父工程中要引入servlet-api.jar不然jsp會報錯的


然後我們在按照同樣的方法建立另一個子工程mr-platform-client(客戶平臺)


搭建完成!我們來看看專案結構吧。

工程mr(Mr Parent Project)就像是一個聯邦國家一樣:

mr-core:核心模組,包括configlistenerutilfactory

mr-logic:公用業務,包括servicedaovo

mr-module:模型,只包括資料層實體類

mr-platform-admanager:管理平臺,包括控制器和私有業務

mr-platform-client:客戶平臺,包括控制器和私有業務

PS:本例只是對maven多模組工程演示的示例,架構可能並不是很合理,希望大家理解^^

專案原始碼在我的百度雲盤中,地址: