From 6643730fec60bd0866228652d4c8a99f5371f2dd Mon Sep 17 00:00:00 2001 From: mattirn Date: Tue, 5 May 2020 16:58:49 +0200 Subject: [PATCH] GraalVM: added catch Error in ttop and removed it from graal demo --- .../main/java/org/jline/builtins/TTop.java | 3 +++ demo/pom.xml | 2 -- demo/src/main/java/org/jline/demo/Graal.java | 9 +++++--- pom.xml | 23 +++++++++++++++---- 4 files changed, 27 insertions(+), 10 deletions(-) diff --git a/builtins/src/main/java/org/jline/builtins/TTop.java b/builtins/src/main/java/org/jline/builtins/TTop.java index 1f7b56fd5..616eae1df 100644 --- a/builtins/src/main/java/org/jline/builtins/TTop.java +++ b/builtins/src/main/java/org/jline/builtins/TTop.java @@ -229,6 +229,9 @@ public void run() throws IOException, InterruptedException { } while (op != Operation.EXIT); } catch (InterruptedException ie) { // Do nothing + } catch (Error err) { + Log.info("Error: ", err); + return; } finally { terminal.setAttributes(attr); if (prevHandler != null) { diff --git a/demo/pom.xml b/demo/pom.xml index 68f3ccbdf..3e1582617 100644 --- a/demo/pom.xml +++ b/demo/pom.xml @@ -104,7 +104,6 @@ org.graalvm.sdk graal-sdk - 19.3.1 provided @@ -198,7 +197,6 @@ org.graalvm.nativeimage native-image-maven-plugin - 19.3.1 diff --git a/demo/src/main/java/org/jline/demo/Graal.java b/demo/src/main/java/org/jline/demo/Graal.java index e60fd5a74..4ca884ed0 100644 --- a/demo/src/main/java/org/jline/demo/Graal.java +++ b/demo/src/main/java/org/jline/demo/Graal.java @@ -20,6 +20,7 @@ import java.util.stream.Collectors; import org.jline.builtins.*; +import org.jline.builtins.Builtins.Command; import org.jline.builtins.Completers.OptionCompleter; import org.jline.builtins.Widgets.TailTipWidgets; import org.jline.builtins.Widgets.TailTipWidgets.TipType; @@ -243,12 +244,14 @@ public static void main(String[] args) { Thread executeThread = Thread.currentThread(); terminal.handle(Signal.INT, signal -> executeThread.interrupt()); // - // ScriptEngine and command registeries + // Command registeries // File file = new File(Graal.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath()); String root = file.getCanonicalPath().replace("graal", "").replaceAll("\\\\", "/"); // forward slashes works better also in windows! ConfigurationPath configPath = new ConfigurationPath(Paths.get(root), Paths.get(root)); - Builtins builtins = new Builtins(Graal::workDir, configPath, null); + Set commands = new HashSet<>(Arrays.asList(Builtins.Command.values())); + commands.remove(Command.TTOP); // ttop command is not supported in GraalVM + Builtins builtins = new Builtins(commands, Graal::workDir, configPath, null); MyCommands myCommands = new MyCommands(Graal::workDir); SystemRegistryImpl systemRegistry = new SystemRegistryImpl(parser, terminal, Graal::workDir, configPath); systemRegistry.setCommandRegistries(builtins, myCommands); @@ -285,7 +288,7 @@ public static void main(String[] args) { // // REPL-loop // - System.out.println(terminal.getName()+": "+terminal.getType()); + System.out.println(terminal.getName() + ": " + terminal.getType()); while (true) { try { systemRegistry.cleanUp(); // delete temporary variables and reset output streams diff --git a/pom.xml b/pom.xml index f4b84b7b6..64a14e127 100644 --- a/pom.xml +++ b/pom.xml @@ -90,6 +90,8 @@ 3.0.2 3.0.3 2.5.0 + 19.3.1 + @@ -244,12 +246,18 @@ groovy-console ${groovy.version} + + + org.graalvm.sdk + graal-sdk + ${graal.version} + - - org.apache.ivy - ivy - ${ivy.version} - + + org.apache.ivy + ivy + ${ivy.version} + org.slf4j @@ -519,6 +527,11 @@ true + + org.graalvm.nativeimage + native-image-maven-plugin + ${graal.version} +