Clean生命周期:
- pre-clean 执行一些需要在clean之前完成的工作
- clean 移除所有上一次构建生成的文件 maven-clean-plugin:clean
- post-clean 执行一些需要在clean之后立刻完成的工作
Default生命周期
- validate 验证项目是正确的,并且有必要的信息都是可获得的
- generate-sources
- process-sources
- generate-resources
- process-resources 复制并处理资源文件,至目标目录,准备打包。
- compile 编译项目的源代码。 mvane-compiler-plugin:compile
- process-classes
- generate-test-sources
- process-test-sources
- generate-test-resources maven-resource-plugin:resources
- process-test-resources 复制并处理资源文件,至目标测试目录。
- test-compile 编译测试源代码。 maven-compiler-plug:testCompile
- process-test-classes maven-resources-plugin:testResources
- test 使用合适的单元测试框架运行测试。这些测试代码不会被打包或部署。 maven-surefire-plugin:test
- prepare-package
- package 接受编译好的代码,打包成可发布的格式,如 JAR 。 maven-jar-plugin:jar
- pre-integration-test
- integration-test 如果有必要,将发布包处理和部署到一个可以运行集成测试的环境中。
- post-integration-test
- verify 运行各种检查来证实该发布是有效的并符合质量标注的。
- install 将包安装至本地仓库,以让其它项目依赖。 maven-install-plugin:install
- deploy 将最终的包复制到远程的仓库,以让其它开发人员与项目共享。 maven-deploy-plugin:deploy
Site生命周期
- pre-site 执行一些需要在生成站点文档之前完成的工作
- site 生成项目的站点文档 maven-site-plugin:site
- post-site 执行一些需要在生成站点文档之后完成的工作,并且为部署做准备
- site-deploy 将生成的站点文档部署到特定的服务器上 maven-site-plugin:deploy
mvn clean 执行clean生命周期的pre-clean、clean 阶段
mvn test 执行default生命周期 valid到test阶段
mvn clean install 先执行clean 生命周期,再执行default周期到install
mvn clean deploy site-deploy 执行clean、default、deploy所有阶段
跳过测试阶段
-Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类
-DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下
动态执行测试用例 mvn test -Dtest=测试类名(可以使用通配符)
http://healthandbeauty.iteye.com/blog/1618501 -U -e -B
插件
%本地仓库%\org\apache\maven\plugins,可以看到一些下载好的插件
Mvn clean:clean 执行指定插件的插件目标(goal)
插件绑定分为内置绑定和自定义绑定。
内置绑定 生命周期与插件目标的关系
Clean生命周期
Default生命周期
Site声明周期
自定义绑定
……
插件仓库
跟其他构件一样,插件也是根据坐标存储在Maven仓库中。超级POM中Maven配置的默认插件远程仓库如下:
从命令行调用插件
例如:mvn org.apache.maven.plugins:maven-dependency-plugin:2.1:tree
解析插件前缀
支持使用前缀调用插件