maven有三套生命周期,且这三套生命周期是独立的,分别为clean、default、site。
clean生命周期的目的是清理项目;
default生命周期的目的是构建项目;
site生命周期的目的是建立项目站点;
每个生命周期由阶段(phases)构成,这些阶段是有顺序的,并且后面的阶段依赖于前面的阶段,我们和maven直接的交互方式就是调用maven的生命周期阶段。下面看一下每套生命周期都包含哪些阶段:
clean Lifecycle:
pre-clean 执行一些清理前需要完成的工作
clean 删除上一次构建完成的文件
post-clean 执行一些清理后需要完成的工作
default Lifecycle:
validate
initialize
generate-sources
process-sources
generate-resources
process-resources
compile
process-classes
generate-test-sources
process-test-sources
generate-test-resources
process-test-resources
test-compile
process-test-classes
test
prepare-package
package
pre-integration-test
integration-test
post-integration-test
verify
install
deploy
site Lifecycle:
pre-site 执行生成项目站点文档之前需要完成的工作
site 生成项目站点文档
post-site 执行项目站点文档生成之后需要完成的工作
site-deploy 部署生成的站点文档到指定的web服务器
通过命令行执行maven任务的最主要方式其实就是调用maven的生命周期阶段,而且下一个阶段的执行必须在上一个阶段完成之后。
实例分析:
mvn clean: 命令调用clean生命周期的clean阶段。完整的执行过程是clean生命周期的pre-clean、clean阶段。
man install: install属于default生命周期的阶段,根据default生命周期的阶段顺序我们知道执行的阶段有validate、initialize、generate-sources、process-sources、generate-resources、process-resources、compile、process-classes、generate-test-sources、process-test-sources、generate-test-resources、process-test-resources、test-compile、process-test-classes、test、prepare-package、package、pre-integration-test、integration-test、post-integration-test、 install