You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2020/04/03 14:39:00 UTC

[sling-slingfeature-maven-plugin] branch master updated (43ba24f -> dfed72f)

This is an automated email from the ASF dual-hosted git repository.

cziegeler pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/sling-slingfeature-maven-plugin.git.


    from 43ba24f  SLING-9324 : Improve api jar generation
     new 9435f66  SLING-9326 : Allow customization of API jar headers
     new dfed72f  SLING-9326 : Allow customization of API jar headers

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../sling/feature/maven/mojos/ApisJarMojo.java     | 23 ++++++++++++++++++----
 1 file changed, 19 insertions(+), 4 deletions(-)


[sling-slingfeature-maven-plugin] 01/02: SLING-9326 : Allow customization of API jar headers

Posted by cz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

cziegeler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-slingfeature-maven-plugin.git

commit 9435f6657bfec8d8302d6ad83daeeb4bd8a83bd3
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Fri Apr 3 16:18:54 2020 +0200

    SLING-9326 : Allow customization of API jar headers
---
 .../apache/sling/feature/maven/mojos/ApisJarMojo.java | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java b/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java
index 59a82c9..963e283 100644
--- a/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java
+++ b/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java
@@ -227,6 +227,12 @@ public class ApisJarMojo extends AbstractIncludingFeatureMojo {
     @Parameter(defaultValue = "true")
     private boolean generateJavadocJar;
 
+    /**
+     * Optional version to be put into the manifest of the created jars
+     */
+    @Parameter
+    private String apiVersion;
+
     @Parameter(defaultValue = "${project.build.directory}/apis-jars", readonly = true)
     private File mainOutputDir;
 
@@ -1263,6 +1269,8 @@ public class ApisJarMojo extends AbstractIncludingFeatureMojo {
 
         final String artifactName = String.format("%s-%s", project.getArtifactId(), finalClassifier);
 
+        final ArtifactId apiId = apiVersion == null ? ctx.getFeatureId() : ctx.getFeatureId().changeVersion(this.apiVersion);
+
         MavenArchiveConfiguration archiveConfiguration = new MavenArchiveConfiguration();
         archiveConfiguration.setAddMavenDescriptor(false);
         if (APIS.equals(classifier)) {
@@ -1270,7 +1278,7 @@ public class ApisJarMojo extends AbstractIncludingFeatureMojo {
             String symbolicName = artifactName.replace('-', '.');
             archiveConfiguration.addManifestEntry("Export-Package", getApiExportClause(ctx, apiRegion));
             archiveConfiguration.addManifestEntry("Bundle-Description", project.getDescription());
-            archiveConfiguration.addManifestEntry("Bundle-Version", ctx.getFeatureId().getOSGiVersion().toString());
+            archiveConfiguration.addManifestEntry("Bundle-Version", apiId.getOSGiVersion().toString());
             archiveConfiguration.addManifestEntry("Bundle-ManifestVersion", "2");
             archiveConfiguration.addManifestEntry("Bundle-SymbolicName", symbolicName);
             archiveConfiguration.addManifestEntry("Bundle-Name", artifactName);
@@ -1286,8 +1294,15 @@ public class ApisJarMojo extends AbstractIncludingFeatureMojo {
             archiveConfiguration.addManifestEntry("Provide-Capability", "osgi.unresolvable");
             archiveConfiguration.addManifestEntry("Require-Capability", "osgi.unresolvable;filter:=\"(&(must.not.resolve=*)(!(must.not.resolve=*)))\",osgi.ee;filter:=\"(&(osgi.ee=JavaSE/compact2)(version=1.8))\"");
         }
-        archiveConfiguration.addManifestEntry("Specification-Version", ctx.getFeatureId().getVersion());
+        archiveConfiguration.addManifestEntry("Implementation-Version", apiId.getVersion());
+        archiveConfiguration.addManifestEntry("Specification-Version", apiId.getVersion());
+
         archiveConfiguration.addManifestEntry("Implementation-Title", artifactName);
+        archiveConfiguration.addManifestEntry("Specification-Title", artifactName);
+        if (project.getOrganization() != null) {
+            archiveConfiguration.addManifestEntry("Implementation-Vendor", project.getOrganization().getName());
+            archiveConfiguration.addManifestEntry("Specification-Vendor", project.getOrganization().getName());
+        }
 
         String targetName = String.format("%s-%s-%s.jar", project.getArtifactId(), project.getVersion(), finalClassifier);
         File target = new File(mainOutputDir, targetName);


[sling-slingfeature-maven-plugin] 02/02: SLING-9326 : Allow customization of API jar headers

Posted by cz...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

cziegeler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-slingfeature-maven-plugin.git

commit dfed72f818c2337eaf06fa6a6bfb9969553b5950
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Fri Apr 3 16:35:43 2020 +0200

    SLING-9326 : Allow customization of API jar headers
---
 src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java b/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java
index 963e283..0308ae4 100644
--- a/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java
+++ b/src/main/java/org/apache/sling/feature/maven/mojos/ApisJarMojo.java
@@ -644,9 +644,9 @@ public class ApisJarMojo extends AbstractIncludingFeatureMojo {
 
             deflate(info.getBinDirectory(), binFile, exportedPackagesAndWrappedBundles);
 
-            // renaming potential name-collapsing resources
-            renameResources(info, binArtifact.getId());
         }
+        // renaming potential name-collapsing resources
+        renameResources(info, binArtifact.getId());
 
         // download sources
         if ( generateSourceJar || generateJavadocJar ) {