Maven的做用:項目構建,依賴管理。
文章借鑑了菜鳥教程Maven相關的內容,連接爲 Maven教程。
包含4個部分:html
cleanjava
清除上次構建生成的文件shell
pre-clean
:執行清理前須要完成的工做clean
:清理上一次構建生成的文件post-clean
:執行清理後須要完成的工做default服務器
構建項目,重要的phase以下:網絡
validate
:驗證工程是否正確,全部須要的資源是否可用。compile
:編譯項目的源代碼。test
:使用合適的單元測試框架來測試已編譯的源代碼。這些測試不須要已打包和佈署。package
:把已編譯的代碼打包成可發佈的格式,好比jar。integration-test
:若有須要,將包處理和發佈到一個可以進行集成測試的環境。verify
:運行全部檢查,驗證包是否有效且達到質量標準。install
:把包安裝到maven本地倉庫,能夠被其餘工程做爲依賴來使用。deploy
:在集成或者發佈環境下執行,將最終版本的包拷貝到遠程的repository,使得其餘的開發者或者工程能夠共享。site框架
創建和發佈項目站點maven
post-site
:生成項目站點以後須要完成的工做site-deploy
:將項目站點發布到服務器倉庫:項目所依賴的第三方庫存放的位置
搜索順序:本地-->遠程-->中央post
Maven 使用原型 archetype
插件建立自定義的項目結構,造成Maven項目模板。原型即爲一個項目模板,例如要建立一個簡單的helloworld項目,則執行mvn命令使用DarchetypeArtifactId=maven-archetype-quickstart
參數,建立原型爲maven-archetype-quickstart
的項目。單元測試
mvn archetype:generate -DgroupId=com.companyname.bank -DartifactId=consumerBanking -DarchetypeArtifactId=maven-archetype-quickstart //項目原型 -DinteractiveMode=false //是否交互模式,區別於批處理模式
直接在pom.xml
中添加依賴的參數。測試
Maven擁有對依賴的傳遞機制,例如B依賴於A,C依賴於B,則C依賴A,maven會管理這種依賴傳遞的關係。
一般在項目的開發的過程當中,部署包括如下步驟:
maven-release-plugin
插件能夠實現自動部署,部分參數以下:
scm
配置SVN的路徑,Maven將從該路徑下將代碼取下來。repository
構建的WAR或EAR或JAR文件的位置,或者其餘源碼構建成功後生成的構件的存儲位置。plugin
配置maven-release-plugin
插件來實現自動部署過程。resources
:用於排除或包含某些資源文件<dependencies>
、<dependency>
標籤;<parent>
標籤,子pom文件能繼承父pom的依賴;<modules>
標籤,將多個maven的項目聚合爲一個大的項目。Maven的屬性是值得佔位符,如${X}
,可用於pom文件任何賦值的位置。