ProcessBuilder на Mac - PullRequest
       7

ProcessBuilder на Mac

0 голосов
/ 24 сентября 2019

У меня проблемы с использованием ProcessBuilder на Mac.

Когда я выполняю это в Windows, это работает, но на Mac нет.в аргументах вы должны указать путь к программе

Как я могу использовать этот тип кодов на Mac ??

Я использую Eclipse, и это код:

import java.io.IOException;
import java.util.Arrays;

public class RunProcess {
public static void main(String[] args) throws IOException, Exception {
    if (args.length <= 0) {
        System.err.println("Se necesita un programar a ejecutar");

        System.exit(-1);

    }
    ProcessBuilder pb = new ProcessBuilder(args);
    try {
        Process process = pb.start();
        int retorno = process.waitFor();
        System.out.println("La ejecucion de" + Arrays.toString(args) + "devuelve" + retorno);

    } catch (IOException ex) {
        System.err.println("Excepcion de E/S");
        System.exit(-1);
    } catch (InterruptedException ex) {
        System.err.println("El proceso hijo finalizó de forma incorrecta");
        System.exit(-1);

    }
  }
}

Трассировка стека:

"/Users/JeysonMerino/Applications/Applications/headsoccer.app": error=13, Permission denied
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
    at LanzarProcesos.ejecutar(LanzarProcesos.java:8)
    at LanzarProcesos.main(LanzarProcesos.java:16)
Caused by: java.io.IOException: error=13, Permission denied
    at java.lang.UNIXProcess.forkAndExec(Native Method)
    at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
    at java.lang.ProcessImpl.start(ProcessImpl.java:134)
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
...