in src/main/java/org/apache/maven/shared/archiver/MavenArchiver.java [414:444]
private void handleSpecificationEntries(Project project, Map<String, String> entries, Manifest m)
throws ManifestException {
addManifestAttribute(
m, entries, "Specification-Title", project.getModel().getName());
String version = project.getPomArtifact().getVersion().toString();
Matcher matcher = Pattern.compile("([0-9]+\\.[0-9]+)(.*?)").matcher(version);
if (matcher.matches()) {
String specVersion = matcher.group(1);
addManifestAttribute(m, entries, "Specification-Version", specVersion);
}
/*
TODO: v4: overconstrained
try {
Version version = project.getArtifact().getVersion();
String specVersion = String.format("%s.%s", version.getMajorVersion(), version.getMinorVersion());
addManifestAttribute(m, entries, "Specification-Version", specVersion);
} catch (OverConstrainedVersionException e) {
throw new ManifestException("Failed to get selected artifact version to calculate"
+ " the specification version: " + e.getMessage());
}
*/
if (project.getModel().getOrganization() != null) {
addManifestAttribute(
m,
entries,
"Specification-Vendor",
project.getModel().getOrganization().getName());
}
}