Я пытаюсь запустить процесс в моей домашней директории в Ubuntu. Я получаю массив из исключения границы. Вот код:
Process p = null;
ProcessBuilder pb = new ProcessBuilder();
pb.directory(new File("/home"));
p = pb.start();
Вот такое исключение:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at java.lang.ProcessBuilder.start(ProcessBuilder.java:459)
at tester.Main.main(Main.java:31)
Java Result: 1
Вы пытаетесь выполнить /Home и он не является исполняемым файлом. В конструктор аргументом строителя процесс выполнения команды.
Вы хотите установить рабочий каталог. Вы можете, что он через каталог Метод.
Вот полный пример:
Process p = null;
ProcessBuilder pb = new ProcessBuilder("do_foo.sh");
pb.directory(new File("/home"));
p = pb.start();