前言
maven拥有三套相互独立的生命周期,分别是clean/default和site. clean是生命周期的目的是清理项目,default生命周期的目的是构建项目,site生命周期的目的是建立项目站点.
clean生命周期
clean的目的是清理项目,包含3个阶段:1.pre-clean 执行一些清理前需要完成的工作; 2.clean 清理上一次构建生成的文件; 3.post-clean 执行一些清理后需要完成的工作
default生命周期
所有生命周期中最核心的部分
compile: 编译项目的主源码.一般来说:编译src/main/java目录下的java文件至项目输出的主classpath目录中
test-compile:编译项目的测试代码,是编译src/test/java目录下的java文件至项目输出的测试classpath目录中
test:使用单元测试框架运行测试,测试代码不会被打包或部署.
package:打包成 可发布的格式
install: 将包安装到maven本地仓库,供本地其他maven项目使用
deploy:将最终的包复制到远程仓库,供其他开发人员和maven项目使用
site生命周期
目的:建立和发布项目站点
pre-site 执行一些在生成项目站点之前需要完成的工作.
site 生成项目站点文档
post-site 执行一些在生成项目站点之后需要完成的工作.
site-deploy 将生成的项目站点发布到服务器上
命令行和声明周期关系
mvn clean: 调用clean生命周期的clean阶段.
mvn test: 代用default生命周期的test阶段
mvn clean install 调用clean声明周期的clean阶段和default生命周期的install阶段.
等等