У меня проблемы с использованием 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)