Including SVN Revision Number

Adding the subversion revision number to your module during packaging

It can be convenient to include the subversion revision number in your omod when packaging a module.  This can be done by including the following plugin in your omod pom:

<build>
    <plugins>

      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>buildnumber-maven-plugin</artifactId>
        <version>1.0</version>
        <executions>
          <execution>
            <phase>validate</phase>
            <goals>
              <goal>create</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <doCheck>true</doCheck>
          <doUpdate>true</doUpdate>
        </configuration>
      </plugin>

    </plugins>

  </build>

This will create a variable "buildNumber" which you now can include elsewhere in your pom, your config.xml, or any file that is filtered by maven during the build.For example, to include the build number in the module version, update the module config.xml as follows:



<module configVersion="1.0">

	<id>@MODULE_ID@</id>
	<name>@MODULE_NAME@</name>
	<version>@MODULE_VERSION@-r${buildNumber}</version>



Or, to include the build number in the omod filename, add the following to your omod pom:

<build>
       <finalName>${project.artifactId}-${project.parent.version}-r${buildNumber}</finalName>
</build>

The plugin will not allow you to build the module if you have local, uncommitted changes. To ignore this check, set the flag -Dmaven.buildNumber.doCheck=false during the build execution.

Read more about using this plugin here.