From d7286290dbecc9284603c97ccee091b89b69080d Mon Sep 17 00:00:00 2001 From: crschnick Date: Thu, 18 Jun 2026 06:58:04 +0000 Subject: [PATCH] Fixes --- app/build.gradle | 14 ++++++++++---- .../io/xpipe/app/core/AppExtensionManager.java | 2 +- .../java/io/xpipe/app/core/AppInstallation.java | 17 ----------------- dist/jpackage.gradle | 17 ----------------- 4 files changed, 11 insertions(+), 39 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index c2f8cdebe..ed624a8d8 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -101,6 +101,8 @@ application { } run { + dependsOn extensionJarDepList + systemProperty propertyName('useVirtualThreads'), 'false' systemProperty propertyName('mode'), 'gui' systemProperty propertyName('writeLogs'), "true" @@ -123,14 +125,18 @@ run { def exts = files(project.allExtensions.stream().map(p -> p.getTasksByName('jar', true)[0].outputs.files.singleFile).toList()) classpath += exts - def cli = project(':cli').getTasksByName('jar', true)[0].outputs.files.singleFile - classpath += files(cli) + if (fullVersion) { + def cli = project(':cli').getTasksByName('jar', true)[0].outputs.files.singleFile + classpath += files(cli) - dependsOn(project(':cli').getTasksByName('jar', true)[0]) - dependsOn(project.allExtensions.stream().map(p -> p.getTasksByName('jar', true)[0]).toList()) + dependsOn(project(':cli').getTasksByName('jar', true)[0]) + dependsOn(project.allExtensions.stream().map(p -> p.getTasksByName('jar', true)[0]).toList()) + } } tasks.register('runAttachedDebugger', JavaExec) { + dependsOn extensionJarDepList + workingDir = rootDir classpath = run.classpath mainModule = groupName + '.app' diff --git a/app/src/main/java/io/xpipe/app/core/AppExtensionManager.java b/app/src/main/java/io/xpipe/app/core/AppExtensionManager.java index d5ef144fc..ade18a707 100644 --- a/app/src/main/java/io/xpipe/app/core/AppExtensionManager.java +++ b/app/src/main/java/io/xpipe/app/core/AppExtensionManager.java @@ -164,7 +164,7 @@ public class AppExtensionManager { } } - externalModules = FileSystems.newFileSystem(URI.create("jrt:/"), Map.of("java.home", localInstallation.getRuntimePath())); + externalModules = FileSystems.newFileSystem(URI.create("jrt:/"), Map.of("java.home", localInstallation.getRuntimePath().toString())); } var basePath = externalModules.getPath("modules", "io.xpipe.ext." + name); diff --git a/app/src/main/java/io/xpipe/app/core/AppInstallation.java b/app/src/main/java/io/xpipe/app/core/AppInstallation.java index 434daa1af..6fa5f9781 100644 --- a/app/src/main/java/io/xpipe/app/core/AppInstallation.java +++ b/app/src/main/java/io/xpipe/app/core/AppInstallation.java @@ -168,8 +168,6 @@ public abstract class AppInstallation { public abstract Path getDaemonExecutablePath(); - public abstract Path getExtensionsPath(); - public abstract Path getLogoPath(); public abstract Path getRuntimePath(); @@ -201,11 +199,6 @@ public abstract class AppInstallation { return getBaseInstallationPath().resolve(AppNames.ofCurrent().getExecutableName() + ".exe"); } - @Override - public Path getExtensionsPath() { - return getBaseInstallationPath().resolve("extensions"); - } - @Override public Path getLogoPath() { return getBaseInstallationPath().resolve("logo.ico"); @@ -269,11 +262,6 @@ public abstract class AppInstallation { return getBaseInstallationPath().resolve("bin", AppNames.ofCurrent().getExecutableName()); } - @Override - public Path getExtensionsPath() { - return getBaseInstallationPath().resolve("extensions"); - } - @Override public Path getLogoPath() { if (!AppProperties.get().isImage()) { @@ -340,11 +328,6 @@ public abstract class AppInstallation { .resolve("Contents", "MacOS", AppNames.ofCurrent().getExecutableName()); } - @Override - public Path getExtensionsPath() { - return getBaseInstallationPath().resolve("Contents", "Resources", "extensions"); - } - @Override public Path getLogoPath() { if (!AppProperties.get().isImage()) { diff --git a/dist/jpackage.gradle b/dist/jpackage.gradle index e0e6fbc0b..50719ee41 100644 --- a/dist/jpackage.gradle +++ b/dist/jpackage.gradle @@ -112,21 +112,6 @@ tasks.named('jlink').get().dependsOn(rootProject.getTasksByName("jar", true)) tasks.named('jlink').get().dependsOn(extLibrariesTasks) def outputName = os.isMacOsX() ? "${jpackageExecutableName}.app/Contents/Resources" : jpackageExecutableName -tasks.register('copyBundledExtensions', DefaultTask) { - dependsOn extLibrariesTasks - doLast { - for (def extProject : extModules) { - def dir = "${extProject.buildDir}/libs_ext" - if (file(dir).exists()) { - copy { - from(dir) - into "$distDir/jpackage/$outputName/extensions/${extProject.name}" - include '*.jar' - } - } - } - } -} tasks.register('prepareMacOSResources', DefaultTask) { doLast { @@ -159,5 +144,3 @@ if (os.isMacOsX()) { jpackageImage.finalizedBy(finalizeMacOSResources) jpackageImage.dependsOn(prepareMacOSResources) } - -tasks.jpackage.finalizedBy(copyBundledExtensions)