更新時間:2018-07-27 來源:黑馬程序員 瀏覽量:
一、Maven簡介(一)什么是Maven
Maven是apache下的開源項目,項目管理工具,管理java項目。
1、項目對象模型(Project Object Model)
POM對象模型,每個maven工程中都有一個pom.xml文件,定義工程所依賴的jar包、本工程的坐標、打包運行方式。。
2、依賴管理系統(基礎核心 )
maven通過坐標對項目工程所依賴的jar包統一規范管理。
3、maven定義一套項目生命周期
清理、初始化、編譯、測試、報告、打包、部署、站點生成
4、一組標準集合
強調:maven工程有自己標準的工程目錄結構、定義坐標有標準。
5、maven 管理項目生命周期過程都是基于插件完成的
(二)Maven倉庫
1、中央倉庫
就是遠程倉庫,倉庫中jar由專業團隊(maven團隊)統一維護。
中央倉庫的地址:http://repo1.maven.org/maven2/
2、本地倉庫
相當于緩存,工程第一次會從遠程倉庫(互聯網)去下載jar 包,將jar包存在本地倉庫(在程序員的電腦上)。第二次不需要從遠程倉庫去下載。先從本地倉庫找,如果找不到才會去遠程倉庫找。
3、私服
在公司內部架設一臺私服,其它公司架設一臺倉庫,對外公開。
(三)本地倉庫配置1. 拷貝本地倉庫
將資料中的repository_ssh.zip解壓到D盤
2. 配置本地倉庫
打開maven的安裝目錄中conf/ settings.xml文件,在這里配置本地倉庫:
<localRepository>D:\repository_ssh</localRepository>
這里的意思是配置本地倉庫的目錄為D:\repository_ssh
工程目錄結構說明:
project
/src/main/java 主體程序 java源文件(不要放配置文件)
/src/main/resources 主體程序所需要的配置文件(不要放java文件)
/src/test/java 單元測試程序 java源文件
/src/test/resources 單元測試程序所用的配置文件
/target 編譯輸出目錄
pom.xml Maven進行工作的主要配置文件。
(四)項目生命周期(了解)Maven有三套相互獨立的生命周期,分別是:clean、default、site。clean主要是清理項目、default是Maven最核心的的構建項目、site是生成項目站點。每一個大的生命周期又分為很多個階段。后面的階段依賴于前面的階段,這點有點像Ant的構建依賴。生命周期本身相互獨立,用戶可以僅僅調用生命周期的某一個階段,也就是說用戶調用了default周期的任何階段,并不會觸發clean周期以及site周期的任何事情。
(1)clean周期:
pre-clean:準備清理
clean:真正的清理工作
post-clean:執行清理后的一些后續工作
(2)default周期:
validate:驗證
initialize:初始化配置
generate-sources:生成源代碼編譯目錄
process-sources:處理項目主資源文件,復制資源文件到outputclasspath
generate-resources:生成資源目錄
process-resources:處理資源文件
complie:編譯源代碼
process-classes:處理編譯后文件
generate-test-sources:生成測試目錄
process-test-sources:處理項目測試資源文件,復制測試資源文件到outputclasspath
generate-test-resources:生成測試資源文件
process-test-resources:處理測試資源文件
test-compile:編譯測試代碼
process-test-classes:處理測試代碼
test:單元測試運行測試代碼
prepare-package:打包前的準備
package:將編譯好的代碼打包成為jar或者war或者ear等等
pre-integration-test:準備整體測試
integration-test:整體測試
post-integration-test:為整體測試收尾
verify:驗證
install:安裝到本地Maven庫
deploy:將最終包部署到遠程Maven倉庫
(3)site周期:
pre-site:準備生成站點
site:生成站點及文檔
post-site:站點收尾
site-deploy:將生成的站點發布到服務器上
(五)常見命令
常用命令如下:
compile:編譯
clean:清理,將target下的class文件清理
test:執行單元測試類,執行src/test/java下的類
package :將java工程打成jar、war。
install:安裝命令,將將程的jar發布到本地倉庫
發布到倉庫,目錄按照本工程定義的坐標生成目錄
擴展:
其實我們所執行的這些命令是對maven原生命令的封裝,我們可以在命令提示符下直接通過這些命令來對代碼進行編譯打包等操作,格式如下:
mvn 命令名稱 運行不調試
mvnDebug 命令名稱 調試運行
我們要在命令提示符下執行maven命令必須配置下面兩個環境變量
MAVEN_HOME D:\apache-maven-3.3.9
PATH %MAVEN_HOME%\bin
測試Maven環境 ,在控制臺輸入mvn -v ,有下列信息輸出表示Maven配置正常。
作者:黑馬程序員javaEE培訓學院
首發:http://java.itheima.com/