From fb41b2d2c4251eb648fc015d4621f50c6c3ed1cc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Galland?= Date: Thu, 15 Feb 2018 22:58:09 +0100 Subject: [PATCH] [sre] Fixing the invalid update of the class path in the Boot. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit close #811 Signed-off-by: Stéphane Galland --- .../src/io/janusproject/Boot.java | 114 ++++++++++++++---- .../src/io/janusproject/messages.properties | 2 +- 2 files changed, 91 insertions(+), 25 deletions(-) diff --git a/sre/io.janusproject/io.janusproject.plugin/src/io/janusproject/Boot.java b/sre/io.janusproject/io.janusproject.plugin/src/io/janusproject/Boot.java index e702902685..60a0899caf 100644 --- a/sre/io.janusproject/io.janusproject.plugin/src/io/janusproject/Boot.java +++ b/sre/io.janusproject/io.janusproject.plugin/src/io/janusproject/Boot.java @@ -28,12 +28,14 @@ import java.io.OutputStream; import java.io.PrintStream; import java.io.PrintWriter; -import java.lang.reflect.Method; +import java.net.MalformedURLException; import java.net.URL; import java.net.URLClassLoader; import java.text.MessageFormat; +import java.util.ArrayList; import java.util.Arrays; import java.util.Iterator; +import java.util.List; import java.util.Properties; import java.util.UUID; import java.util.logging.Logger; @@ -50,6 +52,7 @@ import org.apache.commons.cli.Options; import org.apache.commons.cli.ParseException; import org.arakhne.afc.vmutil.FileSystem; +import org.arakhne.afc.vmutil.URISchemeType; import io.janusproject.kernel.Kernel; import io.janusproject.services.executor.EarlyExitException; @@ -212,6 +215,8 @@ public final class Boot { private static final int ERROR_EXIT_CODE = 255; + private static URLClassLoader dynamicClassLoader; + private static PrintStream consoleLogger; private static Exiter applicationExiter; @@ -234,6 +239,7 @@ public static String[] parseCommandLine(String[] args) { boolean noLogo = false; boolean embedded = false; + boolean userClasspath = false; int verbose = LoggerCreator.toInt(JanusConfig.VERBOSE_LEVEL_VALUE); final Iterator