copy-dependencies goal doesn't properly respect classifier when creating base
version of snapshots
--------------------------------------------------------------------------------------------------
Key: MDEP-294
URL: http://jira.codehaus.org/browse/MDEP-294
Project: Maven 2.x Dependency Plugin
Issue Type: Bug
Components: copy-dependencies
Affects Versions: 2.1
Reporter: Tim Downey
Assignee: Brian Fox
Attachments: CopyDependenciesMojo.java, CopyDependenciesMojo.java.diff
CopyDependenciesMojo ignores any classifier on the artifact being copied when
creating the base version of a snapshot. It works correctly for the non-base
(timestamped) version. This leads to a mismatch in the copied dependencies
where the timestamped version correctly keeps the classifier, but the base
-SNAPSHOT version has the classifier completely dropped.
The fix is simple, although a bit ugly. In the installBaseSnapshot method, a
check must be made for the presence of a classifier on the artifact being
copied before using the ArtifactFactory to create a copy of the base version.
Ideally, the ArtifactFactory would expose a single method that takes all
parameters, but unfortunately it does not. This requires a separate 'if' check
for the presence of a classifier.
Another potential issue is that the method
ArtifactFactory#createArtifactWithClassifier has no parameter for scope. I
don't think that causes any issue in this case, but is another reason why there
should be a single method createArtifact that takes all combinations of
parameters including classifier.
I've attached a patch that will fix the issue, but not a test case since it
looks like the maven-plugin-testing-tools-harness would need to be updated as
well. It doesn't appear to expose any artifacts that both have a classifier
and are snapshots from the ArtifactStubFactory. If deemed important, I can
produce a patch for that as well along with a test.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira