]> git.argeo.org Git - cc0/argeo-build.git/blobdiff - src/org/argeo/build/Repackage.java
Store source bundles separately
[cc0/argeo-build.git] / src / org / argeo / build / Repackage.java
index 4f0089a3204fb8e1803b155f99e33efa4117303d..7513dc5928f0ad946ff4f80a6f7ae08fa2ae58d5 100644 (file)
@@ -93,13 +93,9 @@ public class Repackage {
        private final boolean sourceBundles;
 
        public Repackage(Path a2Base, Path descriptorsBase) {
-               if (System.getenv(ENV_BUILD_SOURCE_BUNDLES) != null) {
-                       sourceBundles = Boolean.parseBoolean(System.getenv(ENV_BUILD_SOURCE_BUNDLES));
-                       if (sourceBundles)
-                               logger.log(Level.INFO, "Sources will be packaged separately");
-               } else {
-                       sourceBundles = true;
-               }
+               sourceBundles = Boolean.parseBoolean(System.getenv(ENV_BUILD_SOURCE_BUNDLES));
+               if (sourceBundles)
+                       logger.log(Level.INFO, "Sources will be packaged separately");
 
                Objects.requireNonNull(a2Base);
                Objects.requireNonNull(descriptorsBase);
@@ -1012,12 +1008,17 @@ public class Repackage {
                deleteDirectory(bundleDir);
 
                if (sourceBundles) {
-                       Path sourceDir = bundleDir.getParent().resolve(bundleDir.toString() + ".src");
+                       Path bundleCategoryDir = bundleDir.getParent();
+                       Path sourceDir = bundleCategoryDir.resolve(bundleDir.toString() + ".src");
                        if (!Files.exists(sourceDir)) {
                                logger.log(WARNING, sourceDir + " does not exist, skipping...");
                                return jarPath;
+
                        }
-                       Path srcJarP = sourceDir.getParent().resolve(sourceDir.getFileName() + ".jar");
+                       Path guessedA2Base = bundleCategoryDir.getParent();
+                       Path srcA2Base = guessedA2Base.getParent().resolve(guessedA2Base.getFileName() + ".src");
+                       Path srcJarP = srcA2Base.resolve(bundleCategoryDir.getFileName()).resolve(sourceDir.getFileName() + ".jar");
+
                        String bundleSymbolicName = manifest.getMainAttributes().getValue("Bundle-SymbolicName").toString();
                        // in case there are additional directives
                        bundleSymbolicName = bundleSymbolicName.split(";")[0];