The Changelog plugin generates reports based on the changes in the Software Configuration Management or SCM while the Changes plugin generates reports either from a changes.xml file or from the JIRA issue management system. For more information about the changes plugin, see http://maven.apache.org/plugins/maven-changes-plugin
[top] |
According to Roger Pressman (in his book) Software Engineering: A Practitioner's Approach, SCM is a "set of activities designed to control change by identifying the work products that are likely to change, establishing relationships among them, defining mechanisms for managing different versions of these work products, controlling the changes imposed, and auditing and reporting on the changes made."
[top] |
The dateFormat
parameter is used when parsing the dates
from the log entries retrieved from your SCM system. It can
not be used to format the dates in the report. If
you try to do this the parsed dates will be wrong and the dates in
the report even more so. They can look like this
0020-05-27
for a file that was changed on 14 december
2005.
[top] |
When you generate the report, you will see output like this on the command line:
[INFO] [changelog:changelog] [INFO] Generating changed sets xml to: .../target/changelog.xml [INFO] Executing: svn --non-interactive log -v -r "{2007-06-13 22:22:09 +0000}:{2007-07-14 22:22:09 +0000}" http://svn.apache.org/repos/asf/maven/plugins/trunk/maven-site-plugin
Executing:
) and
try to run it by itself on the command line. If it doesn't work on
the command line there's probably something wrong with the
<scm>
element in your pom.xml
.
[top] |
The first thing to check is what data the changelog plugin managed to
pull out of your SCM system. In the file
target/changelog.xml
you will find that data. Have a
look and see if the data in the file seems correct. If it is not
correct, then you are not getting the data you expected from your SCM
system. Please check your changelog plugin configuration.
If that doesn't help, you can try to run the maven-scm-plugin from
the command line. The maven-changelog-plugin uses Maven SCM under the
hood and running the maven-scm-plugin is a great way of verifying
that the <scm>
element in your
pom.xml
file is correct. Try this on the command line:
mvn scm:changelog
[top] |
The plugin itself is configured to generate a changelog report. This
is done using the bare minimum of configuration. Have a look at the
<scm>
and
<reporting>/<plugins>
elements in the
pom.xml
of this plugin. The generated report is found
here.
[top] |
You have to specify your clientspec
in the
<systemProperties>
element of this plugin's
<configuration> element.
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-changelog-plugin</artifactId> <configuration> <systemProperties> <property> <name>maven.scm.perforce.clientspec.name</name> <value>your-client-spec-name</value> </property> </systemProperties> </configuration> </plugin>
[top] |
You need to add
<developer>
elements in your pom.xml
file. Their id:s need to match
the userid:s that are used in your SCM system. Only checkins made by
a developer found in the pom will be added to the Developer Activity
report.
[top] |
Please follow these steps in the order they come.
<scm>
element from your
pom.xml
, your plugin configuration plus a rich
description of what happens and what you expected to happen.
[top] |
The short answer is that they don't. This is usually a misunderstanding of how the SCM URLs are inherited.
If you only define an <scm> element in the parent POM, the child modules will interit a value for their SCM URLs. The path to a child directory, when using the aggregator, is not used when constructing the SCM URLs. Only the artifactId is used.
If you want to examine what your POM looks like, including the SCM URLs, you can run this command:
mvn help:effective-pom
[top] |