Maven 構建生命週期階段

validate

驗證專案是否正確以及所有必需資訊是否可用於構建。

initialize

初始化構建環境,例如設定屬性或建立目錄。

generate-sources

生成要在編譯階段處理的原始碼。

process-sources

在需要應用某些過濾器的情況下處理原始碼。

generate-resources

生成要包含在工件中的資源。

process-resources

處理並將資源複製到輸出目錄(${basedir}/target/classes)。

compile

將源目錄(${basedir}/src/main/[java|groovy|...])中專案的原始碼編譯到輸出目錄(${basedir}/target/classes)中。

process-classes

處理 compile 階段生成的 .class 檔案,例如執行位元組碼增強。

generate-test-sources

生成要在 test-compile 階段處理的測試原始碼。

process-test-sources

在需要應用某些過濾器的情況下處理測試原始碼。

generate-test-resources

生成用於測試的資源。

process-test-resources

處理資源目錄(${basedir}/src/main/resources)中的測試資源並將其複製到測試輸出目錄(${basedir}/target/test-classes)中。

test-compile

將測試源目錄(’$ {basedir} / src / test / [java | groovy | …]’)中的原始碼編譯到測試輸出目錄(${basedir}/target/test-classes)中。

process-test-classes

處理測試 test-compile 階段生成的 .class 檔案,例如執行位元組碼增強(Maven 2.0.5 及更高版本)。

test

使用一些合適的測試框架執行測試。注意:這些測試用例不考慮打包和部署。

prepare-package

在最終建立包之前執行最終更改和驗證。

package

將成功編譯和測試的程式碼打包成一些可分發的格式,如 JAR,WAR,EAR 到目標目錄(${basedir}/target)。

pre-integration-test

如果需要在應用程式的環境中應用某些更改,則在執行整合測試之前執行操作。

integration-test

程序並可能將應用程式部署到可以執行整合測試的環境中。

post-integration-test

在整合測試之後執行操作,例如清理在 pre-integration-test 階段建立的環境。

verify

檢查包裹是否有效並符合所需的質量標準。

install

將工件安裝到本地儲存庫中。在此之後,任何其他本地專案都可以將此工件用作其依賴項之一(如果你的 IDE 不支援工作區依賴項解析 )。

deploy

將程式包複製到遠端儲存庫,以使其可供其他開發人員使用。