]> git.argeo.org Git - cc0/argeo-build.git/blobdiff - src/org/argeo/build/Repackage.java
Do not modify only when releasing
[cc0/argeo-build.git] / src / org / argeo / build / Repackage.java
index b637666c9b4f9d5aa070ac10287b7328436b1016..d67a6759ee0f812e7d3551b62c8573a7ea911ca7 100644 (file)
@@ -40,6 +40,7 @@ import java.nio.file.Path;
 import java.nio.file.PathMatcher;
 import java.nio.file.Paths;
 import java.nio.file.SimpleFileVisitor;
+import java.nio.file.StandardCopyOption;
 import java.nio.file.StandardOpenOption;
 import java.nio.file.attribute.BasicFileAttributes;
 import java.util.ArrayList;
@@ -245,15 +246,21 @@ public class Repackage {
                        Path downloaded = downloadMaven(url, artifact);
 
                        // some proprietary artifacts do not allow any modification
+                       // when releasing (with separate sources) we just copy it
                        boolean doNotModify = Boolean.parseBoolean(
                                        fileProps.getOrDefault(ManifestConstants.ARGEO_DO_NOT_MODIFY.toString(), "false").toString());
-                       if (doNotModify) {
+                       if (doNotModify && sourceBundles) {
                                Path unmodifiedTarget = targetCategoryBase.resolve(
                                                fileProps.getProperty(BUNDLE_SYMBOLICNAME.toString()) + "." + artifact.getBranch() + ".jar");
-                               Files.copy(downloaded, unmodifiedTarget);
+                               Files.copy(downloaded, unmodifiedTarget, StandardCopyOption.REPLACE_EXISTING);
+                               downloadAndProcessM2Sources(repoStr, artifact,
+                                               targetCategoryBase.resolve(
+                                                               fileProps.getProperty(BUNDLE_SYMBOLICNAME.toString()) + "." + artifact.getBranch()),
+                                               false);
                                return;
                        }
-
+                       
+                       // normal processing
                        A2Origin origin = new A2Origin();
                        Path targetBundleDir = processBndJar(downloaded, targetCategoryBase, fileProps, artifact, origin);