From: Mathieu Baudier Date: Wed, 9 Mar 2022 15:36:53 +0000 (+0100) Subject: Improve merge X-Git-Tag: v2.3.5~88 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=8743de85fc8116bd6e6c078bcba020b2066bf9d9;p=gpl%2Fargeo-slc.git Improve merge --- diff --git a/org.argeo.slc.factory/src/org/argeo/slc/factory/A2Factory.java b/org.argeo.slc.factory/src/org/argeo/slc/factory/A2Factory.java index ede73f186..9a947f9a5 100644 --- a/org.argeo.slc.factory/src/org/argeo/slc/factory/A2Factory.java +++ b/org.argeo.slc.factory/src/org/argeo/slc/factory/A2Factory.java @@ -276,6 +276,8 @@ public class A2Factory { continue entries; if (entry.getName().startsWith("META-INF/versions/")) continue entries; + if (entry.getName().equals("module-info.class")) + continue entries; Path target = targetBundleDir.resolve(entry.getName()); Files.createDirectories(target.getParent()); if (!Files.exists(target)) { @@ -283,7 +285,9 @@ public class A2Factory { } else { if (entry.getName().startsWith("META-INF/services/")) { try (OutputStream out = Files.newOutputStream(target, StandardOpenOption.APPEND)) { + out.write("\n".getBytes()); jarIn.transferTo(out); + System.out.println("Appended "+entry.getName()); } } else { throw new IllegalStateException("File " + target + " already exists"); @@ -432,7 +436,7 @@ public class A2Factory { // TODO make it less dangerous? if (Files.exists(targetSourceDir)) { - deleteDirectory(targetSourceDir); +// deleteDirectory(targetSourceDir); } else { Files.createDirectories(targetSourceDir); } @@ -444,6 +448,8 @@ public class A2Factory { continue entries; if (entry.getName().startsWith("META-INF"))// skip META-INF entries continue entries; + if (entry.getName().startsWith("module-info.java"))// skip META-INF entries + continue entries; Path target = targetSourceDir.resolve(entry.getName()); Files.createDirectories(target.getParent()); Files.copy(jarIn, target);