MAVEN除了座標、依賴、倉庫,還有倆個核心:生命週期和插件
1.生命週期詳解
clean生命週期:
1):pre-clean執行一些清理前需要完成工作
2):clean 清理上一次構件生成的文件
3):post-clean執行一些清理後需要完成的工作
default生命週期:
default生命週期定義了真正構建時所需要執行的步奏,它是所有生命週期中最核心的部門,其包含的階段如下:
default生命週期定義了真正構建時所需要執行的步奏,它是所有生命週期中最核心的部門,其包含的階段如下:
validate
initialize:
generate-sources:
process-sources:編譯項目的資源文件,一般來說,是編譯src/main/resources目錄的內部進行變量替換等工作後,複製到項目輸出的主classpath目錄中
generate-resources:
process-resources:
compile 編譯項目的主源碼,一般來說,是編譯src/mainjava目錄的內部進行變量替換等工作後,複製到項目輸出的主classpath目錄中
process-classes:
generate-test-sources:
process-test-sources:
test-compile:
prepare-package:
package:
pre-integration-test:
integration-test:
post-integration-test:
verify:
install:將包安裝到Maven本地倉庫,供本地其他Maven項目使用
deploy:將最終的包複製到遠程倉庫;供其他開發人員和Maven項目使用
2.site生命週期:
site生命 週期的目的是建立和發佈項目站點,Maven能夠給予POM所包含的信息,自動生成一個友好的站點。生命週期如下:
#pre-site:執行一些在生成項目站點之前需要完成的工作
#site :生成項目站點文檔
#post-site:執行一些在生成項目站點之後需要完成的工作
#post-deploy :將生成的項目站點發布到服務器上
3.命令行與生命週期
從命令行執行Maven任務最主要方式就是調用Maven的生命週期階段。需要注意的是,各個生命週期是相互獨立的,而一個生命週期的階段是有前後依賴有關的。解析其執行的生命週期階段:
$mvn clean :該命令調用clean生命週期的clean階段,實際執行的節點爲clean生命週期的pre-clean和clean階段
$mvn test:
$mvn clena install:
$mvn clean deploy site-deploy: