Maven進價:Maven的生命週期階段

文章轉自:http://www.cnblogs.com/tenghoo/p/maven_life_cycle.htmlhtml

1、Maven的生命週期設計模式

Maven的生命週期就是對全部的構建過程進行抽象和統一。包含了項目的清理、初始化、編譯、測試、打包、集成測試、驗證、部署和站點生成等幾乎全部的構建步驟。服務器

Maven的生命週期是抽象的,即生命週期不作任何實際的工做,實際任務由插件完成,相似於設計模式中的模板方法。框架

 

2、三套生命週期eclipse

Maven有三套相互獨立的生命週期,分別是clean、default和site。每一個生命週期包含一些階段(phase),階段是有順序的,後面的階段依賴於前面的階段。maven

一、clean生命週期:清理項目,包含三個phase。post

1)pre-clean:執行清理前須要完成的工做單元測試

2)clean:清理上一次構建生成的文件測試

3)post-clean:執行清理後須要完成的工做ui

二、default生命週期:構建項目,重要的phase以下。

1)validate:驗證工程是否正確,全部須要的資源是否可用。
2)compile:編譯項目的源代碼。  
3)test:使用合適的單元測試框架來測試已編譯的源代碼。這些測試不須要已打包和佈署。
4)Package:把已編譯的代碼打包成可發佈的格式,好比jar。
5)integration-test:若有須要,將包處理和發佈到一個可以進行集成測試的環境。
6)verify:運行全部檢查,驗證包是否有效且達到質量標準。
7)install:把包安裝到maven本地倉庫,能夠被其餘工程做爲依賴來使用。
8)Deploy:在集成或者發佈環境下執行,將最終版本的包拷貝到遠程的repository,使得其餘的開發者或者工程能夠共享。

三、site生命週期:創建和發佈項目站點,phase以下

1)pre-site:生成項目站點以前須要完成的工做

2)site:生成項目站點文檔

3)post-site:生成項目站點以後須要完成的工做

4)site-deploy:將項目站點發布到服務器

 

3、命令行和生命週期

各個生命週期相互獨立,一個生命週期的階段先後依賴。

舉例以下:

一、mvn clean

調用clean生命週期的clean階段,實際執行pre-clean和clean階段

二、mvn test

調用default生命週期的test階段,實際執行test以及以前全部階段

三、mvn clean install

調用clean生命週期的clean階段和default的install階段,實際執行pre-clean和clean,install以及以前全部階段

 

4、m2eclipse和生命週期

一、m2eclipse中預置的mvn命令

右鍵maven項目或pom.xml文件>Run As 能夠看到預置的mvn命令



 二、自定義mvn命令

單擊 上圖中的maven Build...,自定義命令 mvn clean install:

定義完成後,點擊maven Build,能夠看到定義好的命令:


 二、自定義mvn命令

單擊 上圖中的maven Build...,自定義命令 mvn clean install:

定義完成後,點擊maven Build,能夠看到定義好的命令:

相關文章
相關標籤/搜索