maven生命周期、阶段、目标等概念

生命周期和阶段

maven有3个内置的生命周期:default, clean and site。

The default lifecycle handles your project deployment。

The clean lifecycle handles project cleaning。

The site lifecycle handles the creation of your project's site documentation。

每个生命周期包含一组阶段序列,一个阶段只属于一个生命周期,这样当执行mvn xx阶段时就先确定该阶段所属的生命周期,然后顺序执行该生命周期内xx阶段之前的所有阶段。比如 mvn integration-test首先定位integration-test在default生命周期内,然后执行default生命周期内integration-test阶段之前的所有阶段,但不会执行clean生命周期中的任何阶段。

如果要一次执行多个生命周期内的阶段,就传递多个阶段参数即可。

mvn clean install

mvn clean package

 

下面文件定义了三个生命周期包含的阶段,以及每种packaging类型对应的阶段目标

http://svn.apache.org/repos/asf/maven/maven-2/tags/maven-2.2.0/maven-core/src/main/resources/META-INF/plexus/components.xml

<lifecycles>

- < lifecycle >
  < id > default </ id >
- < phases >
  < phase > validate </ phase >
  < phase > initialize </ phase >
  < phase > generate-sources </ phase >
  < phase > process-sources </ phase >
  < phase > generate-resources </ phase >
  < phase > process-resources </ phase >
  < phase > compile </ phase >
  < phase > process-classes </ phase >
  < phase > generate-test-sources </ phase >
  < phase > process-test-sources </ phase >
  < phase > generate-test-resources </ phase >
  < phase > process-test-resources </ phase >
  < phase > test-compile </ phase >
  < phase > process-test-classes </ phase >
  < phase > test </ phase >
  < phase > prepare-package </ phase >
  < phase > package </ phase >
  < phase > pre-integration-test </ phase >
  < phase > integration-test </ phase >
  < phase > post-integration-test </ phase >
  < phase > verify </ phase >
  < phase > install </ phase >
  < phase > deploy </ phase >
  </ phases >
  </ lifecycle >
- < lifecycle >
  < id > clean </ id >
- < phases >
  < phase > pre-clean </ phase >
  < phase > clean </ phase >
  < phase > post-clean </ phase >
  </ phases >
- < default-phases >
  < clean > org.apache.maven.plugins:maven-clean-plugin:clean </ clean >
  </ default-phases >
  </ lifecycle >
- < lifecycle >
  < id > site </ id >
- < phases >
  < phase > pre-site </ phase >
  < phase > site </ phase >
  < phase > post-site </ phase >
  < phase > site-deploy </ phase >
  </ phases >
- < default-phases >
  < site > org.apache.maven.plugins:maven-site-plugin:site </ site >
  < site-deploy > org.apache.maven.plugins:maven-site-plugin:deploy </ site-deploy >
  </ default-phases >
  </ lifecycle >
  </ lifecycles >

Maven插件和目标

maven可以执行阶段也可以执行目标,还可以混合执行

mvn clean dependency:copy-dependencies  package

一个Maven插件是一个单个或者多个目标的集合,一个目标是一个明确的任务,它可以作为单独的目标运行,或者作为一个大的构建的一部分和其它目标一起运行。一个目标是Maven中的一个“工作单元(unit of work)”

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值