From df2fd6590ddf79b62cf37559ea72995c6de8a0a5 Mon Sep 17 00:00:00 2001 From: Michael Leuschel <leuschel@cs.uni-duesseldorf.de> Date: Mon, 25 Nov 2019 14:28:51 +0100 Subject: [PATCH] use ProcessBuilder to start ProB2 Standalone --- .../src/de/prob/ui/eventb/OpenClassicHandler.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/de.prob.ui/src/de/prob/ui/eventb/OpenClassicHandler.java b/de.prob.ui/src/de/prob/ui/eventb/OpenClassicHandler.java index e4456183..5a56cb74 100644 --- a/de.prob.ui/src/de/prob/ui/eventb/OpenClassicHandler.java +++ b/de.prob.ui/src/de/prob/ui/eventb/OpenClassicHandler.java @@ -107,16 +107,20 @@ public class OpenClassicHandler extends AbstractHandler implements IHandler { // from command-line it is: java -jar prob2-ui-1.0.1-SNAPSHOT-all.jar --machine-file FILE Process process = null; try { - final String command = "java -jar " + probBinary + " --machine-file " + modelFile; - process = Runtime.getRuntime().exec(command); - final BufferedReader output = new BufferedReader( - new InputStreamReader(process.getInputStream())); - new Thread(new ClassicConsole(output)).start(); + // final String command = "java -jar " + probBinary + " --machine-file " + modelFile; + //process = Runtime.getRuntime().exec(command); + //final BufferedReader output = new BufferedReader( + // new InputStreamReader(process.getInputStream())); + //new Thread(new ClassicConsole(output)).start(); + + final String[] command = {"java", "-jar", probBinary, "--machine-file", modelFile}; + process = new ProcessBuilder(command).redirectErrorStream().start(); // TODO: maybe use //ProcessBuilder pb = new ProcessBuilder("/path/to/java", "-jar", probBinary, "--machine-file",modelFile); // pb.directory(new File("preferred/working/directory")); // Process p = pb.start(); + } catch (IOException e) { Logger.notifyUserWithoutBugreport("You need to specify a correct location for " -- GitLab