]> git.argeo.org Git - cc0/argeo-build.git/blobdiff - src/org/argeo/build/Repackage.java
Delete previous failed builds
[cc0/argeo-build.git] / src / org / argeo / build / Repackage.java
index a6c84edd81f627e86410707cfbf81b364078dcdf..c3fbcaf8850278db4fb2e67e1b2e100cf76770c5 100644 (file)
@@ -584,6 +584,10 @@ public class Repackage {
                                                } else if (entry.getName().startsWith("org/apache/batik/")) {
                                                        logger.log(TRACE, "Skip " + entry.getName());
                                                        continue entries;
+                                               } else if (entry.getName().startsWith("META-INF/NOTICE")) {
+                                                       logger.log(WARNING, "Skip " + entry.getName() + " from " + artifact);
+                                                       // TODO merge them?
+                                                       continue entries;
                                                } else {
                                                        throw new IllegalStateException("File " + target + " from " + artifact + " already exists");
                                                }
@@ -683,8 +687,7 @@ public class Repackage {
                                }
 
                                if (!fileProps.containsKey(EXPORT_PACKAGE.toString())) {
-                                       fileProps.put(EXPORT_PACKAGE.toString(),
-                                                       "*;version=\"" + fileProps.getProperty(BUNDLE_VERSION.toString()) + "\"");
+                                       fileProps.put(EXPORT_PACKAGE.toString(), "*");
                                }
 
                                // BND analysis
@@ -1025,7 +1028,14 @@ public class Repackage {
                                        nameVersion.setName(ourSymbolicName);
                                }
                        }
+
+                       // create bundle dir
                        bundleDir = targetBase.resolve(nameVersion.getName() + "." + nameVersion.getBranch());
+                       if (Files.exists(bundleDir)) {
+                               logger.log(WARNING, "Bundle dir " + bundleDir
+                                               + " already exists, probably from a previous failed build, deleting it...");
+                               deleteDirectory(bundleDir);
+                       }
 
                        // copy original MANIFEST
                        if (sourceManifest != null) {
@@ -1050,7 +1060,6 @@ public class Repackage {
                                arch = libRelativePath.getName(1).toString();
                        }
 
-//                     if (!embed) {
                        // copy entries
                        JarEntry entry;
                        entries: while ((entry = jarIn.getNextJarEntry()) != null) {
@@ -1117,7 +1126,6 @@ public class Repackage {
                                        origin.deleted.add(bundleDir.relativize(target).toString());
                                }
                                logger.log(TRACE, () -> "Copied " + target);
-//                             }
                        }
                }
 
@@ -1130,11 +1138,6 @@ public class Repackage {
                                        entries.get(BUNDLE_SYMBOLICNAME.toString()) + ";singleton:=true");
                }
 
-//             if (embed) {// copy embedded jar
-//                     Files.copy(file, bundleDir.resolve(file.getFileName()));
-//                     entries.put(ManifestHeader.BUNDLE_CLASSPATH.toString(), file.getFileName().toString());
-//             }
-
                // Final MANIFEST decisions
                // We also check the original OSGi metadata and compare with our changes
                for (String key : entries.keySet()) {