Maven3Plan - Apache Commons - Apache Software Foundation (original) (raw)
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
- Maven 3.x and site plugin
Email Threads
- [http://markmail.org/message/4itian33hycyt4iz ] - maven dev
- [http://markmail.org/message/32j6w3xtwdjbi2h4 ] - commons dev
Site Generation
Configuration
The main issue with Maven3 are the changes to site generation. The section no longer works - maven-site-plugin is now configured in the section of 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:
- http://jira.codehaus.org/browse/MSITE-484
- http://jira.codehaus.org/browse/MNG-4856
- http://jira.codehaus.org/browse/PLXUTILS-134
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:
* commons-parent https://svn.apache.org/repos/asf/commons/proper/commons-parent/branches/maven-3-test/
* commons-chain https://svn.apache.org/repos/asf/commons/proper/chain/branches/test-maven3-profile/
- 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 section
- Site Plugin configuration - either:
* remove section and configure maven-site-plugin in the main 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 section and configure maven-site-plugin in the main 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 ??? |