diff --git a/gradle.properties b/gradle.properties index 106351e..7b89936 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,7 +3,7 @@ publishMavenRepositoryUrl=https://mvn.woggioni.net/ lys-gradle-plugins.version = 2022.06 -version.envelope=2022.06 +version.envelope=2022.08 version.gradle=7.5 version.lombok=1.18.22 version.junitJupiter=5.7.2 diff --git a/launcher/src/main/java/net/woggioni/envelope/Launcher.java b/launcher/src/main/java/net/woggioni/envelope/Launcher.java index 1c9471e..2bf6755 100644 --- a/launcher/src/main/java/net/woggioni/envelope/Launcher.java +++ b/launcher/src/main/java/net/woggioni/envelope/Launcher.java @@ -59,6 +59,7 @@ public class Launcher { @SneakyThrows public static void main(String[] args) { Enumeration it = Launcher.class.getClassLoader().getResources(Constants.SYSTEM_PROPERTIES_FILE); + JarFile.registerUrlProtocolHandler(); while (it.hasMoreElements()) { URL url = it.nextElement(); Properties properties = new Properties(); diff --git a/loader/src/main/java/net/woggioni/envelope/loader/Handler.java b/loader/src/main/java/net/woggioni/envelope/loader/AbstractHandler.java similarity index 99% rename from loader/src/main/java/net/woggioni/envelope/loader/Handler.java rename to loader/src/main/java/net/woggioni/envelope/loader/AbstractHandler.java index 1f0ecbd..7c27684 100644 --- a/loader/src/main/java/net/woggioni/envelope/loader/Handler.java +++ b/loader/src/main/java/net/woggioni/envelope/loader/AbstractHandler.java @@ -38,7 +38,7 @@ import java.util.regex.Pattern; * @since 1.0.0 * @see JarFile#registerUrlProtocolHandler() */ -public class Handler extends URLStreamHandler { +public abstract class AbstractHandler extends URLStreamHandler { // NOTE: in order to be found as a URL protocol handler, this class must be public, // must be named Handler and must be in a package ending '.jar' @@ -75,11 +75,11 @@ public class Handler extends URLStreamHandler { private URLStreamHandler fallbackHandler; - public Handler() { + public AbstractHandler() { this(null); } - public Handler(JarFile jarFile) { + public AbstractHandler(JarFile jarFile) { this.jarFile = jarFile; } diff --git a/loader/src/main/java/net/woggioni/envelope/loader/JarFile.java b/loader/src/main/java/net/woggioni/envelope/loader/JarFile.java index da1bb7b..4c3909c 100644 --- a/loader/src/main/java/net/woggioni/envelope/loader/JarFile.java +++ b/loader/src/main/java/net/woggioni/envelope/loader/JarFile.java @@ -16,6 +16,8 @@ package net.woggioni.envelope.loader; +import net.woggioni.envelope.loader.jar.Handler; + import java.io.File; import java.io.FilePermission; import java.io.IOException; @@ -60,7 +62,7 @@ public class JarFile extends AbstractJarFile implements Iterable