In your pom.xml file, do something like the following:
<reporting>
<plugins>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-changelog-plugin</artifactId>
</plugin>
...
</plugins>
</reporting>
You must have a SCM portion in your pom.xml so the plugin knows where to find your code and comments:
<scm>
<connection>scm:svn:https://domain/path/to/project</connection>
<developerConnection>scm:svn:https://domain/path/to/project</developerConnection>
<url>https://domain/path/to/project</url>
</scm>
If your source control server requires authentication before the user is able to browse the repository you'll need to add some configuration parameters:
<reporting>
<plugins>
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-changelog-plugin</artifactId>
<configuration>
<username>uname</username>
<password>pass</password>
</configuration>
</plugin>
...
</plugins>
</reporting>
Other configuration parameters can be found here.
Important note: In a multi-module project, the artifact of the module must match the folder name of the SCM. Ie: if you have a foo-model module it must be located at /foo-model from the urlBase of your SCM repository.
Gotcha: If a rename command is issued in the source control repository, the links in the changelog will more than likely be broken.
