加米谷大數據:Maven 構建生命周期

來源:http://www.yiibai.com/maven/maven_build_life_cycle.html

階段

處理

描述

準備資源

資源複製

資源複製可以進行定製

編譯

執行編譯

源代碼編譯在此階段完成

包裝

打包

創建JAR/WAR包如在 pom.xml 中定義提及的包

安裝

安裝

這一階段在本地/遠程Maven倉庫安裝程序包

清潔生命週期

當我們執行命令 mvn clean 命令後,Maven 調用清潔的生命週期由以下幾個階段組成:

  • pre-clean

  • clean

  • post-clean

Maven 清潔目標(clean:clean)被綁定清潔乾淨的生命週期階段。clean:clean 目標刪除 build 目錄下的構建輸出。因此,當 mvn clean 命令執行時,Maven會刪除編譯目錄。

目標清潔生命週期在上述階段,我們可以自定義此行為。

默認(或生成)生命週期

這是 Maven 主要的生命週期,用於構建應用程序。它有以下 23 個階段。

生命週期階段

描述

validate

驗證項目是否正確,並且所有必要的信息可用於完成構建過程

initialize

建立初始化狀態,例如設置屬性

generate-sources

產生任何的源代碼包含在編譯階段

process-sources

處理源代碼,例如,過濾器值

generate-resources

包含在包中產生的資源

process-resources

複製和處理資源到目標目錄,準備打包階段

compile

編譯該項目的源代碼

process-classes

從編譯生成的文件提交處理,例如:Java類的字節碼增強/優化

generate-test-sources

生成任何測試的源代碼包含在編譯階段

process-test-sources

處理測試源代碼,例如,過濾器任何值

test-compile

編譯測試源代碼到測試目標目錄

process-test-classes

處理測試代碼文件編譯生成的文件

test

運行測試使用合適的單元測試框架(JUnit)

prepare-package

執行必要的任何操作的實際打包之前準備一個包

package

提取編譯後的代碼,並在其分發格式打包,如JAR,WAR或EAR文件

pre-integration-test

完成執行集成測試之前所需操作。例如,設置所需的環境

integration-test

處理並在必要時部署軟件包到集成測試可以運行的環境

pre-integration-test

完成集成測試已全部執行後所需操作。例如,清理環境

verify

運行任何檢查,驗證包是有效的,符合質量審核規定

install

將包安裝到本地存儲庫,它可以用作當地其他項目的依賴

deploy

複製最終的包到遠程倉庫與其他開發者和項目共享

有涉及到Maven 生命週期值得一提幾個重要概念:

  • 當一個階段是通過 Maven命令調用,例如:mvn compile,只有階段到達幷包括這個階段才會被執行。

  • 不同的 Maven 目標綁定到 Maven生命週期的不同階段這是這取決於包類型(JAR/WAR/EAR)。

網站的生命週期

Maven的網站插件通常用於創建新的文檔,創建報告,部署網站等。

階段

  • pre-site

  • site

  • post-site

  • site-deploy

領取大數據開發、大數據挖掘分析、Python人工智能等試聽資料,可上加米穀大數據官網(http://www.dtinone.com/)諮詢領取或者加入加米穀大數據技術交流群領取:234648425


分享到:


相關文章: