Search code examples
javamacosapplescriptprocessbuilderosascript

Java starting running command in new terminal (mac osx) - process builder not running osascript properly


I'm trying to create a new process in a new window. I'm following this example for the command Running a command in a new Mac OS X Terminal window (using Java Process builder). I printed out the resulting command and it works if I type it in manually, but it doesn't start the new window when I run it.

Something as simple as osascript -e 'tell application "Terminal" to do script "java -jar test.jar"' doesn't bring anything up

Sample code:

    try {
        ProcessBuilder pb = new ProcessBuilder("osascript", "-e",
            "'tell application \"Terminal\" to do script \"java -jar test.jar\"'");
        Process p = pb.start();
    } catch (Exception ex) {
        ex.printStackTrace();
    }

It doesn't even bring up an error (as it should if it were starting the java process in a new terminal window)


Solution

  • And as usual although I spend hours looking into my problem I find the silly solution after I ask stack overflow... don't need the single quotes around tell application.... Process builder does that. Er, not sure if question needs to be closed. Quite localized, but certainly confusing IMO