You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by tr...@apache.org on 2018/08/28 04:32:28 UTC

svn commit: r1839406 - in /jackrabbit/commons/filevault-package-maven-plugin/trunk/src: main/java/org/apache/jackrabbit/filevault/maven/packaging/impl/ImportPackageBuilder.java test/resources/test-projects/manifest-generation/with-bundles/pom.xml

Author: tripod
Date: Tue Aug 28 04:32:28 2018
New Revision: 1839406

URL: http://svn.apache.org/viewvc?rev=1839406&view=rev
Log:
JCRVLT-256 Package Maven Plugin: NPE when dependency has no manifest

Modified:
    jackrabbit/commons/filevault-package-maven-plugin/trunk/src/main/java/org/apache/jackrabbit/filevault/maven/packaging/impl/ImportPackageBuilder.java
    jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/manifest-generation/with-bundles/pom.xml

Modified: jackrabbit/commons/filevault-package-maven-plugin/trunk/src/main/java/org/apache/jackrabbit/filevault/maven/packaging/impl/ImportPackageBuilder.java
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault-package-maven-plugin/trunk/src/main/java/org/apache/jackrabbit/filevault/maven/packaging/impl/ImportPackageBuilder.java?rev=1839406&r1=1839405&r2=1839406&view=diff
==============================================================================
--- jackrabbit/commons/filevault-package-maven-plugin/trunk/src/main/java/org/apache/jackrabbit/filevault/maven/packaging/impl/ImportPackageBuilder.java (original)
+++ jackrabbit/commons/filevault-package-maven-plugin/trunk/src/main/java/org/apache/jackrabbit/filevault/maven/packaging/impl/ImportPackageBuilder.java Tue Aug 28 04:32:28 2018
@@ -476,7 +476,7 @@ public class ImportPackageBuilder {
             id = artifact.getId();
             JarFile jar = new JarFile(artifact.getFile());
             Manifest manifest = jar.getManifest();
-            String exportPackages = manifest.getMainAttributes().getValue(Constants.EXPORT_PACKAGE);
+            String exportPackages = manifest == null ? null : manifest.getMainAttributes().getValue(Constants.EXPORT_PACKAGE);
             if (exportPackages != null) {
                 for (Map.Entry<String, Attrs> entry : new Parameters(exportPackages).entrySet()) {
                     Attrs options = entry.getValue();

Modified: jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/manifest-generation/with-bundles/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/manifest-generation/with-bundles/pom.xml?rev=1839406&r1=1839405&r2=1839406&view=diff
==============================================================================
--- jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/manifest-generation/with-bundles/pom.xml (original)
+++ jackrabbit/commons/filevault-package-maven-plugin/trunk/src/test/resources/test-projects/manifest-generation/with-bundles/pom.xml Tue Aug 28 04:32:28 2018
@@ -33,7 +33,7 @@
                     <group>my/test/group</group>
                     <importUnusedPackages>true</importUnusedPackages>
                     <importPackage>
-                        -aQute*, <!-- example of removing a package -->
+                        -aQute*,-javax.inject*, <!-- example of removing a package -->
                         -org.osgi.framework.*, <!-- should keep the org.osgi.framework but remove subpackages-->
                         javax.jcr*;version="[1.0.0,3.0.0)", <!-- example of altering existing packages -->
                         org.apache.foo  <!-- example of adding a new package -->
@@ -74,5 +74,12 @@
             <version>5.0.0</version>
             <scope>provided</scope>
         </dependency>
+        <dependency>
+            <!-- unused dependency without manifest -->
+            <groupId>javax.inject</groupId>
+            <artifactId>javax.inject</artifactId>
+            <version>1</version>
+            <scope>provided</scope>
+        </dependency>
     </dependencies>
 </project>