Maven生命週期及常用命令
一、Maven內建3個生命週期
clean(專案的清理)、default(專案的部署)、site(專案站點文件的建立)
每個生命週期都是由一些階段組成。
比如說default生命週期包括(詳細的生命週期看後文):
validate(驗證) 驗證專案是否正確,並提供所有必要的資訊。
compile(編譯) 編譯專案的原始碼。
test(測試) 使用合適的測試框架測試編譯後的原始碼。這些測試程式碼不應該被打包或部署。
package(打包) 將已編譯的原始碼打包為可分發的格式,如JAR。
verify(檢查) 對整合測試的結果進行任何檢查,以確保滿足質量標準。
install(安裝) 安裝軟體包到本地儲存庫,作為依賴供本地其他專案使用。
deploy(部署) 在構建環境中完成,將最終包分發到遠端儲存庫,以便與其他開發人員和專案共享。
二、Clean生命週期
pre-clean(預清理) 執行專案實際清理前所需的流程。
clean(清理) 刪除以前版本生成的所有檔案。
post-clean(後清理) 執行完專案清理所需的過程。
三、Default生命週期
validate 驗證專案是否正確,並提供所有有必要的資訊。
initialize 初始化構建狀態,例如設定屬性或建立目錄。
generate-sources 生成包含在編譯中的任何原始碼。
process-sources 處理原始碼,例如過濾一些值。
generate-resources 生成包含在包中的資源。
process-resources 處理資源並複製資源到目標目錄,為打包做準備。
compile 編譯專案原始碼。
process-classes 處理生成後的位元組碼檔案,例如在Java類上進行位元組碼增強。
generate-test-sources 生成包含在編譯中的任何測試原始碼。
process-test-sources 處理測試原始碼,例如過濾一些值。
generate-test-resources 建立測試資源。
process-test-resources 處理測試資源,並複製到測試目標目錄中。
test-compile 編譯測試原始碼,並複製到測試目標目錄中。
process-test-classes 處理生成後的測試原始碼的位元組碼,例如在Java類上進行位元組碼增強。對於Maven2.0.5及以上版本。
test 使用合適的單元測試框架執行測試。這些測試不應該被要求打包或部署。
prepare-package 打包之前進行一些操作,例如解壓縮,處理版本。(Maven2.1及以上)
package 將編譯後程式碼打包為可分發的格式,如JAR。
pre-integration-test 在整合測試之前進行一些操作。這可能設計諸如設定所需環境等事情。
integration-test 如果需要的話,將程式包處理並部署到可以執行整合測試的環境中。
post-integration-test 執行整合測試後執行所需的操作。這可能包括清理環境。
verify 執行任何檢查來驗證包是有效的,並且符合質量標準。
install 將軟體包安裝到本地儲存庫中,作為本地其他專案的依賴項。
deploy 在整合環境或發行版環境中完成,將最終包複製到遠端儲存庫,以便與其他開發人員和專案共享。
四、site生命週期
pre-site 執行專案站點生成之前所需的流程。
site 生成專案的站點文件。
post-site 執行完專案站點生成所需的流程,併為網站部署做好準備。
site-deploy 將生成的站點文件部署到指定的Web伺服器。
總結:
1、maven的生命週期內建3種,clean用來清理專案,default用來構建專案,site用來生成專案站點文件。
2、每週生命週期都是由一些階段組成。
-------------------------------------------------
3、一個階段由外掛目標組成。
4、一些階段預設繫結著外掛目標。
5、pom中的packaging標籤的值對應著不同的階段來構建專案。
---------------------
一.maven的常用命令
1.clean:清理
A.java中的clean命令
選中一個專案clean會把你生成的.class檔案清理掉
B.Tomcat中的clean命令
Tomcat的clean是把部署tomcat中的專案.class檔案清理掉
C.maven中的clean命令
mvn clean
1
將專案根目錄下target目錄清理掉
2.compile:編譯
mvn compile
1
將專案中.java檔案編譯為.class檔案
3.test:單元測試
mvn test
1
單元測試類名有要求:XxxTest.java(命令只認Test結尾的)
將專案根目錄下,src/test/java目錄下的單元測試類都會執行
4.package:打包
mvn package
1
web project —war包
java project —jar包
將專案打包,打包到專案更目錄下target目錄
5.install:安裝
解決本地多個專案共用一個jar包
mvn install
1
打包到本地倉庫
二.maven專案的生命週期
在maven中存在”三套”生命週期,每一套宣告週期相互獨立,互不影響
在一套生命週期內,執行後面的命令前面命令會自動執行
1.cleanLifeCycle:清理宣告週期
Clean
1
2.defaultLifeCycle:預設生命週期
compile,test,package,install,deploy(部署)
1
3.siteLifeCycle:站點生命週期
site
---------------------
原文:https://blog.csdn.net/qq_33248299/article/details/78966359
原文:https://blog.csdn.net/amaniz/article/details/79288250
相關文章
- Maven實戰:Maven生命週期Maven
- Maven生命週期和外掛Maven
- 深入理解maven及應用(一):生命週期和外掛Maven
- Vue例項及生命週期Vue
- Activity簡介及生命週期
- 生命週期
- View生命週期與Activity生命週期的關係View
- PHP 生命週期PHP
- Flutter - 生命週期Flutter
- sessionStorag 生命週期Session
- Fragment生命週期Fragment
- Activity生命週期
- vue - 生命週期Vue
- React生命週期React
- ubuntu生命週期Ubuntu
- React 生命週期React
- vue生命週期Vue
- Maven (POM+約定+生命週期 + 依賴) 戰略分析Maven
- Salesforce 生命週期管理(一)應用生命週期淺談Salesforce
- React元件的狀態及生命週期事件React元件事件
- Activity生命週期onDestroy
- Flutter -- Element生命週期Flutter
- Flutter 的生命週期Flutter
- SQL的生命週期SQL
- java servlet 生命週期JavaServlet
- React-生命週期React
- vue 生命週期梳理Vue
- Laravel的生命週期Laravel
- 理解VUE生命週期Vue
- React 元件生命週期React元件
- Laravel框架生命週期Laravel框架
- ReactNative 生命週期React
- vue的生命週期Vue
- JSP生命週期JS
- React元件生命週期React元件
- vue 生命週期深入Vue
- Fragment的生命週期Fragment
- iOS App生命週期iOSAPP