Remove Require-Bundle only for JNA platform
[cc0/argeo-build.git] / src / org / argeo / build / Repackage.java
index 0daf3c401add6e94ed9c3a50c59528a1008900d0..2a9331d559e611c943c53f2192a52741ecb4a270 100644 (file)
@@ -1030,10 +1030,6 @@ public class Repackage {
                        sourceManifest = jarIn.getManifest();
                        if (sourceManifest == null)
                                logger.log(WARNING, file + " has no manifest");
-                       else {
-                               if (!doNotModify)
-                                       sourceManifest.getMainAttributes().remove(REQUIRE_BUNDLE.toString());
-                       }
                        manifest = sourceManifest != null ? new Manifest(sourceManifest) : new Manifest();
 
                        String rawSourceSymbolicName = manifest.getMainAttributes().getValue(BUNDLE_SYMBOLICNAME.toString());
@@ -1223,7 +1219,11 @@ public class Repackage {
                for (Iterator<Map.Entry<Object, Object>> manifestEntries = manifest.getMainAttributes().entrySet()
                                .iterator(); manifestEntries.hasNext();) {
                        Map.Entry<Object, Object> manifestEntry = manifestEntries.next();
-                       switch (manifestEntry.getKey().toString()) {
+                       String key = manifestEntry.getKey().toString();
+                       // TODO make it more generic
+                       if (key.equals(REQUIRE_BUNDLE.toString()) && nameVersion.getName().equals("com.sun.jna.platform"))
+                               manifestEntries.remove();
+                       switch (key) {
                        case "Archiver-Version":
                        case "Build-By":
                        case "Created-By":