Creating the Tag
Prerequisites:
1) Remove any vestigal references to org.apache.maven.plugins maven-pluto-plugin. This was caused by an incorrect <groupId> that appeared a while back in the Pluto POM. Once you remove these references, they shouldn't come back:
- Delete this directory: ~/.m2/repository/org/apache/maven/plugins/maven-pluto-plugin
- Remove any reference to pluto-maven-plugin in ~/.m2/repository/org/apache/maven/plugins/maven-metadata-local.xml
- Make sure the following is in settings.xml in ~/.m2/repository:
<pluginGroups> <pluginGroup>org.apache.pluto</pluginGroup> </pluginGroups>
The Maven 2 release plugin is used to create the tag. The Maven 2 assembly plugin is used to create the binary and source distributions.
TODO: fix paths
With Maven 2, creating the tag and creating the distributions occur at the same time. When the release
plugin is run, be sure to activate the assembly
profile (using -Passembly,build-assemblies
on the command line). When the assembly
and build-assemblies
profiles are activated, the distributions will be generated in assembly/target/assembly/out
.
The release plugin will (not in this exact order, but close):
- Check to make sure you don't have any uncommitted changes in your working copy.
- Check to make sure you have an up-to-date working copy.
- Check to make sure you don't have any dependencies on any SNAPSHOT artifacts.
- Prompt you for the version you are releasing (e.g. if trunk is
1.1.0-SNAPSHOT
, you are releasing1.1.0
). - Prompt you for the next version in the development cycle (e.g. if you are releasing
1.1.0
then the next version is probably1.1.1-SNAPSHOT
). - Update the POM's with the proper version numbers.
- Create the tag in SVN.
- Build the distributions (as long as the
assembly
profile is activated) - Run
mvn deploy
andmvn site-deploy
- Make sure you have an up-to-date copy of trunk checked out, and that you don't have any pending changes.
svn up svn st
2. Run mvn -Passembly,build-assemblies release:prepare
3. Run mvn -Passembly release:perform
You should see your new tag appear under tags. You should see a commit that look something like:
esm@clue:~$ svn log https://svn.apache.org/repos/asf/portals/pluto/tags --limit 1 ------------------------------------------------------------------------ r506076 | esm | 2007-02-11 12:29:23 -0500 (Sun, 11 Feb 2007) | 1 line [maven-scm] copy for tag pluto-1.1.0 ------------------------------------------------------------------------
4. Binaries will be in assembly/target/assembly/out