Maven 3 Plan
Background
2010-10-07 The Vote to release Maven 3 is in progress on the maven dev list.
Documentation
Maven Confluence Wiki Maven 3.x
Email Threads
[VOTE] Release Apache Maven 3.0 - maven dev
[all] Preparing for Maven 3 - commons dev
Site Generation
Configuration
The main issue with Maven3 are the changes to site generation. The <reporting> section no longer works - maven-site-plugin is now configured in the <plugins> section of <build> with report plugins configured in the maven-site-plugin's configuration.
Merging site configuration items from a parent POM
There's an issue with inheriting the maven-site-plugin's configuration from a parent and merging it with a components configuration - See:
At the moment (i.e. 3.0-beta-2 of the maven-site-plugin) the fix is to add combine.children="append" (See FAQs-1) - its not 100% and I don't currently know whether this is the only/permanent solution or whether the maven team is going to fix this properly. You can see an example of this here
<plugin>
<artifactId>maven-site-plugin</artifactId>
<configuration>
<reportPlugins combine.children="append">
...
</reportPlugins>
</configuration>
</plugin>
Plan
- Testing
- The section below documents the tests that have been carried out
- For testing the site generation the following branches have been setup:
- Upgrade components reporting plugins to use the latest versions (doing this first means any problems with plugins can be identified and fixed first - otherwise the cause might be either the plugin or Maven 3)
- Update commons-parent
Add reporting plugins to <dependencyManagement> section
- Site Plugin configuration - either:
remove <reporting> section and configure maven-site-plugin in the main <build> section
add a Maven 3 profile (automatically activated when M3 is used) with the site plugin configured - see example here
- Release commons-parent
- Release commons-sandbox-parent
- Update component pom's (if commons decides to adopt M3 support)
- Update to use new commons-parent release
- Site Plugin configuration - either:
remove <reporting> section and configure maven-site-plugin in the main <build> section
add a Maven 3 profile (automatically activated when M3 is used) with the site plugin configured - see example here
Testing
Test
Comment
Completed
mvn -Prc clean package
Run for all proper components - need to test Sandbox components
2010-10-06
mvn -Prc clean install
Current problem with gpg plugin
mvn site
Requires config update and plugin upgrades
mvn -Ptest-deploy site
release plugin
Nexus Release
mvn commons:download-page
2010-10-06
mvn commons:mail-page
2010-10-06
mvn commons:jira-page
2010-10-06
mvn commons:sandbox-jira-page
commons-build-plugin build
currently not building
mvn -Pjava-1.3 test
uses different surefire-plugin version
mvn -Pjava-1.4 test
mvn -Pjava-1.5 test
mvn -Pjava-1.6 test
Commons Site
mvn -Ptrunks-proper clean package
mvn -Ptrunks-sandbox clean package
mvn -Pci ???