自定义绑定:用户可以将某个插件目标绑定到生命周期的某个阶段上。 一个常见的例子是创建项目的源码jar包,内置的插件绑定关系中并没有涉及这一任务,因此需要用户自行配置。maven-source-plugin可以帮助我们完成。它的jar-no-fork目标能够将项目的主代码打包成jar文件,可以将其绑定到default生命周期的verify阶段上。在执行完集成测试后和安装构件之前创建jar包。
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>verify</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
上述配置中,出了基本的插件坐标声明外,患有插件执行配置,executions下每个execution子元素可以用来配置执行一个任务,该例中配置了一个id为attach-sources的任务,通过phrase设置,将其绑定到verify生命周期阶段上,再拖过goals配置指定要执行的插件目标。