[ASTERIXDB-2074][MVN] Fix manifest metadata
1. Ensure the following jar metdata is configured correctly:
- Implementation-Title
- Implementation-URL
- Implementation-Vendor
2. Remove extraneous entries around specification (N/A)
e.g.
$ unzip -p hyracks-util-0.3.4-SNAPSHOT.jar META-INF/MANIFEST.MF
Manifest-Version: 1.0
Implementation-Title: Apache Hyracks - hyracks-util
Implementation-Version: 0.3.4-SNAPSHOT
Built-By: <snip>
Implementation-Vendor-Id: org.apache.hyracks
Created-By: Apache Maven 3.3.9
Build-Jdk: 1.8.0_144
Implementation-URL: https://asterixdb.apache.org/
Implementation-Vendor: The Apache Software Foundation
Change-Id: Ie14913e390b0ab167044523c00cc345c2578beef
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2435
Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Reviewed-by: Ian Maxon <imaxon@apache.org>
Contrib: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
diff --git a/asterixdb/pom.xml b/asterixdb/pom.xml
index adab2e4..41b27fb 100644
--- a/asterixdb/pom.xml
+++ b/asterixdb/pom.xml
@@ -23,7 +23,7 @@
<artifactId>apache-asterixdb</artifactId>
<version>0.9.4-SNAPSHOT</version>
<packaging>pom</packaging>
- <url>https://asterixdb.apache.org/</url>
+ <url>${implementation.url}</url>
<parent>
<groupId>org.apache</groupId>
@@ -77,6 +77,11 @@
<hyracks.version>0.3.4-SNAPSHOT</hyracks.version>
<hadoop.version>2.2.0</hadoop.version>
<jacoco.version>0.7.6.201602180812</jacoco.version>
+
+ <implementation.title>Apache AsterixDB - ${project.name}</implementation.title>
+ <implementation.url>https://asterixdb.apache.org/</implementation.url>
+ <implementation.version>${project.version}</implementation.version>
+ <implementation.vendor>${project.organization.name}</implementation.vendor>
</properties>
<build>
@@ -88,6 +93,18 @@
<excludes>
<exclude>**/DEPENDENCIES</exclude>
</excludes>
+ <archive>
+ <manifest>
+ <addDefaultImplementationEntries>false</addDefaultImplementationEntries>
+ <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries>
+ </manifest>
+ <manifestEntries>
+ <Implementation-Title>${implementation.title}</Implementation-Title>
+ <Implementation-URL>${implementation.url}</Implementation-URL>
+ <Implementation-Version>${implementation.version}</Implementation-Version>
+ <Implementation-Vendor>${implementation.vendor}</Implementation-Vendor>
+ </manifestEntries>
+ </archive>
</configuration>
</plugin>
<plugin>
@@ -619,6 +636,18 @@
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifest>
+ <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+ <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries>
+ </manifest>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<!-- We override the configuration plugin to override the descriptor to use for building
the source release zip. Specifically, we would like to control the inclusions/exclusions.
diff --git a/hyracks-fullstack/pom.xml b/hyracks-fullstack/pom.xml
index 7b5fd6b..9ac5d8f 100644
--- a/hyracks-fullstack/pom.xml
+++ b/hyracks-fullstack/pom.xml
@@ -24,7 +24,7 @@
<version>0.3.4-SNAPSHOT</version>
<packaging>pom</packaging>
<name>hyracks-ecosystem-full-stack</name>
- <url>https://asterixdb.apache.org/</url>
+ <url>${implementation.url}</url>
<parent>
<groupId>org.apache</groupId>
<artifactId>apache</artifactId>
@@ -67,6 +67,11 @@
<!-- Versions under dependencymanagement or used in many projects via properties -->
<hadoop.version>2.2.0</hadoop.version>
<jacoco.version>0.7.6.201602180812</jacoco.version>
+
+ <implementation.title>Apache Hyracks - ${project.name}</implementation.title>
+ <implementation.url>https://asterixdb.apache.org/</implementation.url>
+ <implementation.version>${project.version}</implementation.version>
+ <implementation.vendor>${project.organization.name}</implementation.vendor>
</properties>
<dependencyManagement>
<dependencies>
@@ -208,6 +213,18 @@
<excludes combine.children="append">
<exclude>**/DEPENDENCIES</exclude>
</excludes>
+ <archive>
+ <manifest>
+ <addDefaultImplementationEntries>false</addDefaultImplementationEntries>
+ <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries>
+ </manifest>
+ <manifestEntries>
+ <Implementation-Title>${implementation.title}</Implementation-Title>
+ <Implementation-URL>${implementation.url}</Implementation-URL>
+ <Implementation-Version>${implementation.version}</Implementation-Version>
+ <Implementation-Vendor>${implementation.vendor}</Implementation-Vendor>
+ </manifestEntries>
+ </archive>
</configuration>
</plugin>
<plugin>
@@ -556,6 +573,18 @@
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifest>
+ <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+ <addDefaultSpecificationEntries>false</addDefaultSpecificationEntries>
+ </manifest>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<!-- We override the configuration plugin to override the descriptor to use for building
the source release zip. Specifically, we would like to control the inclusions/exclusions.