Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
maven-archiver-2.4.1
-
None
-
Ubuntu 10.10, Maven 2.2.1 and Maven 3.0.3, OpenJDK Runtime Environment (IcedTea6 1.9.7) (6b20-1.9.7-0ubuntu1) (64 bits)
Mint 17.1, Java HotSpot(TM) 64-Bit Server VM (build 20.0-b11, mixed mode), Maven 3.2.5
-
Patch
Description
When building an artifact with a SNAPSHOT version,
Specification-Version and Implementation-Version are both set to ${pom.version} (as described in the documentation).
But this will break the deployment in a container like WebLogic Server 10.3.4.
This behavior is compliant with specification
http://download.oracle.com/javase/6/docs/technotes/guides/versioning/spec/versioning2.html#wp89939
where it is said that "Specification version numbers use a Dewey decimal notation consisting of numbers seperated by periods"
Further in this spec, in ยง "1.5.10 Rationale for limiting Implementation version numbers to identity", it is explained why Implementation-Version need to be compared strictly for equality.
So we can understand that:
- Specification-Version must NOT have "-SNAPSHOT" suffix. This is legal to keep only the beginning of ${pom.version}, because it represents the spec version, not the build ;
- Implementation-Version has to be set to ${pom.version} to represent the exact version of the build.
This used to be the behavior in Maven 1:
http://maven.apache.org/maven-1.x/plugins/jar/manifest.html
Attachments
Attachments
Issue Links
- Is contained by
-
MJAR-213 Upgrade to maven-archiver 3.0.1
- Closed
- is duplicated by
-
MSHARED-432 Maven Archiver creates invalid Specification-Version string for SNAPSHOTs
- Closed