插件是maven的核心,maven中所有操作都是基于插件的。
一个插件有一个或者多个gola(目标),一个目标就是一个动作,也可以叫命令。
插件是需要绑定maven的生命周期中来执行的,使用phase标签。
学习maven插件,可以到apache官网学习,因为apache上提供的maven插件,都有很明确的使用说明,这个是比较好的。
这里就试着使用一个apache上的插件,其他的方法都一样,只是要发时间去研究如何使用。
Maven pdf插件的pom.xml 配置如下:
<profiles>
<profile>
<id>pdf</id>
<reporting>
<plugins>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>2.1.2</version>
<reportSets>
<reportSet>
<reports>
<report>cim</report>
<!-- take too long time <report>dependencies</report> -->
<report>dependency-convergence</report>
<report>dependency-management</report>
<!-- already present <report>index</report> -->
<report>issue-tracking</report>
<report>license</report>
<report>mailing-list</report>
<report>plugin-management</report>
<report>plugins</report>
<report>project-team</report>
<report>scm</report>
<report>summary</report>
</reports>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
</profile>
</profiles>
<build>
<finalName>user-parent</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pdf-plugin</artifactId>
<version>1.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>pdf</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
运行mvn clean package后得到打包的pdf文件:
其中,是将该pdf的goal绑定到package的生命周期中执行的。