Maven
1、學習目標
-
會使用maven構建專案的命令
-
會使用maven構建java專案和java web專案
-
依賴管理--傳遞依賴 版本衝突處理
-
在web的單個工程中實現jsp+servlet整合。
-
分模組構建工程
-
會向私服上傳jar包。會從私服下載jar包
2、Maven介紹
2.1 maven是什麼
-
maven翻譯為“專家”,“內行”。
-
Maven是Apache下的一個純java開發的開源專案,它是一個專案管理工具,使用maven對java專案進行構建、依賴管理。當前使用Maven的專案在持續增長。
2.2 什麼是專案構建
-
專案構建是一個專案從編寫原始碼到編譯、測試、執行、打包、部署、執行的過程
2.3 構建過程
2.3.1 傳統專案構建過程
-
傳統的使用eclipse構建專案的過程如下:
2.3.2 maven專案構建過程
-
maven將專案構建的過程進行標準化,每個階段使用一個命令完成,下圖展示了構建過程的一些階段,後面章節詳 細介紹每個階段,這裡先大概瞭解下:
-
清理 mvn clean
-
編譯 mvn compile
-
測試 mvn test
-
報告 mvn site
-
打包 mvn package
-
部署 mvn deploy
2.4 jar依賴管理
2.4.1 傳統專案的依賴管理
-
傳統的專案工程要管理所依賴的jar包完全靠人工進行,程式設計師從網上下載jar包新增到專案工程中,如下圖:程式 員手工將Spring、SpringMVC、Mybatis的jar新增到工程中的WEB-INF/lib目錄下。
手工拷貝jar包新增到工程中的問題是:
-
沒有對jar包的版本統一管理,容易導致版本衝突。
-
從網上找jar包非常不方便,有些jar找不到。
-
jar包新增到工程中導致工程過大。
2.4.2 maven專案的依賴管理
-
maven專案管理所依賴的jar包不需要手動向工程新增jar包,只需要在pom.xml(maven工程的配置檔案)新增jar
-
包的座標,自動從maven倉庫中下載jar包、執行,如下圖:
使用maven依賴管理新增jar的好處:
-
通過pom.xml檔案對jar包的版本進行統一管理,可避免版本衝突。
-
maven團隊維護了一個非常全的maven倉庫,裡邊包括了當前使用的jar包,maven工程可以自動從maven倉庫
下載jar包,非常方便。
2.5 使用maven的好處
通過上邊介紹傳統專案和maven專案在專案構建及依賴管理方面的區域,maven有如下的好處:
-
一步構建
maven對專案構建的過程進行標準化,通過一個命令即可完成構建過程。
-
依賴管理
maven工程不用手動導jar包,通過在pom.xml中定義座標從maven倉庫自動下載,方便且不易出錯。
-
maven的跨平臺,可在window、linux上使用。
-
maven遵循規範開發有利於提高大型團隊的開發效率,降低專案的維護成本,大公司都會考慮使用maven來構
建專案。