blob: cbc4a270b026f53acd3c14dd330b722692e07d1f [file] [log] [blame]
<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<faqs id="FAQ" title="Frequently Asked Questions">
<part id="General">
<faq id="What is the difference between the Changelog plugin and the Changes plugin">
<question>What is the difference between the Changelog plugin and the Changes plugin?</question>
<answer>
<p>
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
<a href="http://maven.apache.org/plugins/maven-changes-plugin/">http://maven.apache.org/plugins/maven-changes-plugin</a>
</p>
</answer>
</faq>
<faq id="What is Software Configuration Management or SCM">
<question>What is Software Configuration Management or SCM?</question>
<answer>
<p>
According to Roger Pressman (in his book) Software Engineering: A Practitioner's Approach, SCM is a <em>"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."</em>
</p>
</answer>
</faq>
<faq id="Why do the dates look weird in the report when I use the dateFormat parameter">
<question>Why do the dates look weird in the report when I use the dateFormat parameter?</question>
<answer>
<p>
The <code>dateFormat</code> parameter is used when parsing the dates
from the log entries retrieved from your SCM system. It can
<strong>not</strong> 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
<code>0020-05-27</code> for a file that was changed on 14 december
2005.
</p>
</answer>
</faq>
<faq id="How can I debug the SCM command">
<question>How can I debug the SCM command?</question>
<answer>
<p>
When you generate the report, you will see output like this on the
command line:
<source>
[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
</source>
Copy the SCM command (everything after <code>Executing:</code>) 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
<code>&lt;scm&gt;</code> element in your <code>pom.xml</code>.
</p>
</answer>
</faq>
<faq id="My changelog report is blank, but it shouldn't be">
<question>My changelog report is blank, but it shouldn't be</question>
<answer>
<p>
The first thing to check is what data the changelog plugin managed to
pull out of your SCM system. In the file
<code>target/changelog.xml</code> 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.
</p>
<p>
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 <code>&lt;scm&gt;</code> element in your
<code>pom.xml</code> file is correct. Try this on the command line:
<source>
mvn scm:changelog
</source>
It should show you the latest changes made in your SCM. It uses the
default settings, but you can change these by specifying parameters
on the command line. Read more about this in
<a href="http://maven.apache.org/scm/plugins/examples/scm-advance-features.html">the scm-plugin documentation</a>.
</p>
</answer>
</faq>
<faq id="Where can I find a working configuration for this plugin">
<question>Where can I find a working configuration for this plugin?</question>
<answer>
<p>
The plugin itself is configured to generate a changelog report. This
is done using the bare minimum of configuration. Have a look at the
<code>&lt;scm&gt;</code> and
<code>&lt;reporting&gt;/&lt;plugins&gt;</code> elements in the
<a href="http://svn.apache.org/repos/asf/maven/plugins/trunk/maven-changelog-plugin/pom.xml">pom.xml</a>
of this plugin. The generated report is found
<a href="changelog.html">here</a>.
</p>
</answer>
</faq>
<faq id="How do I use this plugin with Perforce?">
<question>How do I use this plugin with Perforce?</question>
<answer>
<p>
You have to specify your <code>clientspec</code> in the
<code>&lt;systemProperties&gt;</code> element of this plugin's
&lt;configuration&gt; element.
<source>
<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>
</source>
</p>
</answer>
</faq>
<faq id="The Developer Activity report is blank, but the other reports are fine">
<question>The Developer Activity report is blank, but the other reports are fine</question>
<answer>
<p>
You need to add
<a href="http://maven.apache.org/ref/current/maven-model/maven.html#class_developer"><code>&lt;developer&gt;</code></a>
elements in your <code>pom.xml</code> 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.
</p>
</answer>
</faq>
<faq id="I think I've found a bug in this plugin, what do I do">
<question>I think I've found a bug in this plugin, what do I do?</question>
<answer>
<p>
Please follow these steps in the order they come.
</p>
<ol>
<li>
Read all the FAQs on this page.
</li>
<li>
Ask a question on the user list. Please supply the necessary
information so that the people on the list can help you. This
includes the <code>&lt;scm&gt;</code> element from your
<code>pom.xml</code>, your plugin configuration plus a rich
description of what happens and what you expected to happen.
</li>
<li>
Create an issue in <a href="issue-tracking.html">JIRA</a>.
</li>
</ol>
</answer>
</faq>
</part>
</faqs>