Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: maven-archiver-2.4
-
Component/s: maven-archiver
-
Labels:None
-
Testcase included:yes
-
Number of attachments :
Description
See related problems MJAR-28 and MASSEMBLY-67.
Summary:
The Maven-Archiver uses the file part of the artifact's filename to create the Class-Path entries in the Manifest.
This works fine for released artifacts and non-deployed snapshot.
The problem occurs when using a deployed snapshot as the assembly plugin will copy the dependency as ${artifactId}-${version}-timestampedversion.jar and the entry in the Class-Path will be ${artifactId}-${version}-SNAPSHOT
thus use of java -jar <jarfile> will fail because of the differing names.
Attachments
Issue Links
| This issue relates to: | ||||
| MDEPLOY-57 | <uniqueVersion>false</uniqueVersion> not honored inside <profile> |
|
|
|
| MASSEMBLY-67 | assembling dependent jars or snapshots uses timestamp formatted version instead of ${version} |
|
|
|
| MJAR-28 | Using the jar plugin with addClasspath and snapshots can create manifest classpath with incorrect jar versions |
|
|
|
| This issue is related to: | ||||
| MDEPLOY-57 | <uniqueVersion>false</uniqueVersion> not honored inside <profile> |
|
|
|
Attached refactoring patch, with appropriate test cases, that changes Maven Archiver to use Project.getRuntimeArtifacts instead of Project.getRuntimeClasspathElements.