"Site" Profile for Advanced Maven Site Configuration
Most of production site content takes time to build (for example, JavaDoc API, changes report, etc). It's convenient to move that configuration plugins to a profile, which is activated only once in a while. Profile site does exactly that, grouping together most time-consuming reporting plugins. The profile can be activated only manually from command line, e.g.:
$ mvn clean install site-deploy -Psite
The profile configures maven-site-plugin with all required reporting plugins:
- maven-project-info-reports-plugin creates basic "project information" reports.
- maven-javadoc-plugin builds JavaDoc API documentation in ./apidocs-$project.version directory.
- cobertura-maven-plugin generates code coverage report.
- maven-plugin-plugin generate documentation for maven plugin.
- versions-maven-plugin reports about available dependency and plugin versions.
Also site profile has the following plugins:
- maven-docck-plugin checks the quality of Maven project documentation.
You can add your own reporting plugins, for example (pay attention to combine.children attribute of reportPlugins element):
<profiles>
[...]
<profile>
<id>site</id>
<build>
<plugins>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<configuration>
<reportPlugins combine.children="append">
<plugin>
<artifactId>maven-changes-plugin</artifactId>
<version>2.8</version>
<reportSets>
<reportSet>
<reports>
<report>changes-report</report>
</reports>
</reportSet>
</reportSets>
</plugin>
</reportPlugins>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>Also you can add your own plugins that should be executed when you're building a production site. Just add them to the site profile.