將原始模塊按照功能拆分成若干個子模塊,方便模塊間的相互調用,接口共享。
分模塊開發代碼設計步驟如下,目的是將bean層和mapper層從原模塊中分離出來,變成兩個新的模塊。
(1)新建2個maven模塊
(2)書寫模塊代碼
分模塊開發需要先對模塊功能進行設計,再進行編碼。不會先將工程開發完畢,再進行拆分。
這里的模塊代碼主要是Book實體類和BookMapper接口,如上圖。
(3)通過maven-install指令將模塊安裝到本地
(4)在模塊中引入分模塊
org.itxiaoguo maven_1 1.0-SNAPSHOT org.itxiaoguo maven_2 1.0-SNAPSHOT
至此,多模塊協同開發搭建完畢。
二、依賴管理 2.1 依賴傳遞(1)依賴具有傳遞性,比如A依賴B,B依賴C,那么A依賴C,B稱為直接依賴,C稱為間接依賴。依賴優先級:
路徑優先 | 聲明優先 | 特殊優先 |
---|---|---|
當相同依賴在不同層級時,以層級低的為準 | 當相同依賴在相同層級時(不同pom.xml),以配置順序靠前的為準 | 當相同依賴的不同版本在同一個pom.xml中配置了,以最后一次配置的為準 |
可選依賴 | 排除依賴 |
---|---|
在當前模塊可用,不能向下傳遞。如自己寫的依賴提供給別人使用時 | 有但不需要使用該依賴時,排除依賴,不需要寫版本號。如當發現一個jar包的東西不好用時可以排除 |
javax.servlet javax.servlet-api 4.0.1 true
org.itxiaoguo maven_1 1.0-SNAPSHOT javax.servlet javax.servlet-api
三、繼承與聚合
3.1 聚合聚合是指用將多個模塊組織成一個整體,從而達到同時進行項目構建,這個管理工程稱為聚合工程,下面介紹如何進行聚合工程開發。
pom ../SSM_1 ../maven_2 ../maven_1
當交換module書寫順序后,再次編譯:
子工程可以繼承父工程(通常是聚合工程)的配置信息,最常見的是依賴關系繼承。作用是簡化開發,減少依賴版本沖突。
org.mybatis mybatis 3.5.5 mysql mysql-connector-java 8.0.24 junit junit 4.13 test
org.itxiaoguo maven_parent 1.0-SNAPSHOT ../maven_parent/pom.xml
類型 | 聚合 | 繼承 |
---|---|---|
作用 | 快速構建項目 | 快速配置項目 |
相同 | pom文件打包方式為pom | 屬于設計型模塊,無實際功能 |
不同 | 在當前模塊配置聚合關系,模塊可以感知到子模塊 | 在子模塊中繼承,父工程無法知道哪些工程繼承了自己 |
一般在聚合工程中,在properties標簽下以標簽形式自定義屬性,使用屬性可以解決多個版本號一致時修改不方便的問題,將版本號定義成變量引用。
14 14 5.2.10.RELEASE
子工程使用屬性
org.springframework spring-webmvc ${spring.webmvc}
4.2 配置文件加載屬性
4.3 版本管理工程版本 | 發布版本 |
---|---|
包括SNAPSHOT快照版本和RELEASE發行版本。 | 包括alpha,純數字和beta版本。 |
(1)使用profiles標簽定義多個不同的環境并設置默認環境
env_dep jdbc:mysql://localhost:3306/test env_pro jdbc:mysql://127.1.1.1:3306/test true env_test jdbc:mysql://127.3.3.2:3306/test
(2)使用命令選擇執行環境
(1)跳過全部測試
使用maven工具:
點擊圖中的閃電按鈕之后,執行maven指令即可跳過測試。
使用mvn命令:
在pom文件中配置測試插件:
org.apache.maven.plugins maven-surefire-plugin 2.12.4 true
(2)跳過一部分不測試
org.apache.maven.plugins maven-surefire-plugin 2.12.4 true **/BookServiceImplTest.java
六、游戲
6.1 游戲簡介和安裝1.游戲是什么
游戲是一個特殊的遠程倉庫,它是架構在局域網內的倉庫服務,供局域網內的開發人員使用。當Maven需要下載構建的使用,它先從游戲請求,如果游戲沒有的話,則從外部的遠程倉庫下載,然后緩存在游戲上,再為Maven的下載請求提供服務。
2.游戲的作用
3.Nexus下載使用
Nexus是一個倉庫管理器,通過Nexus來搭建Maven的游戲。
步驟:
(1)下載游戲
官網下載地址,但是一般進不去,訪問速度太慢了,這里提供百度網盤下載地址,無風險。
(2)啟動Nexus并使用瀏覽器訪問
修改端口,默認端口是8081
(1)在Nexus存儲管理器上新建兩個maven倉庫,并加入到maven-public倉庫組中。
(2)修改Maven的setting.xml文件
org.example maven_4 1.0-SNAPSHOT
itxiaoguo-release http://localhost:8081/repository/itxiaoguo-release/ itxiaoguo-Snapshot http://localhost:8081/repository/itxiaoguo-Snapshot/
你是否還在尋找穩定的海外服務器提供商?創新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統配攻擊溯源,準確流量調度確保服務器高可用性,企業級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧
當前題目:Maven|高級-創新互聯
文章鏈接:http://vcdvsql.cn/article24/hoice.html
成都網站建設公司_創新互聯,為您提供服務器托管、做網站、移動網站建設、網站制作、App設計、定制網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯