目录
一、生命周期与插件的关系
- 生命周期本身不做任何工作,实际的任务都是交由插件来完成的。
- 生命周期的每个构建步骤都可以绑定一个或者多个插件行为。
- Maven为大多数构建步骤编写并绑定了默认插件。
二、生命周期详解
三套生命周期:
- clean :清理
- default :构建
- site :生成站点
default是最重要的周期,主要阶段有:
- compile :编译项目主源码
- test :使用单元测试框架运行测试
- package :接受编译好的代码,打包成可发布的格式。如jar,war。
- install :将打包好的包安装到Maven本地仓库,供本地其他Maven项目使用。
- deploy :将最终的包复制到远程仓库,供其他开发人员和Maven项目使用。
三、插件目标
对于插件本身,为了复用代码,它往往能够完成多个任务。由此一个插件会有很多个目标(goal),一个目标对应一个功能。
四、插件绑定
Maven的生命周期与插件相互绑定,用以完成实际的构建任务。具体而言,是生命周期的阶段(phase)与插件的目标(goal)相互绑定,以完成某个具体的构建任务。
4.1内置绑定

4.2自定义绑定

一个插件可以有多个目标,一个生命周期阶段可以绑定多个插件目标,一个插件目标也可以配置到多个生命周期阶段中。
五、插件配置
5.1命令行插件配置:
mvn install -Dmaven.test.skip=true
5.2POM中插件全局配置
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
5.3POM中插件任务配置
除了为插件配置全局的参数,用户还可以为某个插件任务配置特定的参数。以maven-aturn-plugin为例,它有一个目标run,可以用来在Maven中调用Ant任务。用户将maven-antun-plugin:run绑定到多个生命周期阶段上,再加以不同的配置,就可以让Maven在不同的生命阶段执行不同的任务,见代码清单7-5。

297



被折叠的 条评论
为什么被折叠?



