Следующие работает команда правильно в моем терминале Linux:Как я могу вызвать эту команду с помощью метода Runtime.getRuntime().
java -Djava.library.path=/home/john/native_so_libraries/linux-64 -cp '/home/john/NetBeansProjects/SendReceive/dist/SendReceive.jar:/home/john/Desktop/Dropbox/Libjitsi_linux_64/*' Main "send"
Эта команда указывает папку для собственных библиотек .so (через Djava.library.path =/...), файл приложения JAR с именем «SendReceive .jar ", папку для JAR-библиотек (через опцию -cp classpath), а также основной класс, содержащий основной метод для запуска, класс под названием« Main ». Он имеет один аргумент командной строки, окруженный кавычками, аргумент «отправить». Эта команда работает и запускает процесс Java с терминала, но я не могу понять, как заставить его работать с Runtime.getRuntime(). Exec из другого процесса.
Обратите внимание, что я прилагаю все усилия, чтобы следовать инструкциям, приведенным в этом уроке: http://www.javaworld.com/article/2071275/core-java/when-runtime-exec---won-t.html?page=2 - это значит, что я использую потоки, чтобы потреблять стандартный поток ввода и стандартный поток ошибок из процесса. Тем не менее, этот процесс не начнется, когда я делаю эту команду терминала в строку вроде так:
Process process = Runtime.getRuntime().exec("java -Djava.library.path=/home/john/native_so_libraries/linux-64 -cp '/home/john/NetBeansProjects/SendReceive/dist/SendReceive.jar:/home/john/Desktop/Dropbox/Libjitsi_linux_64/*' Main \"send\"");
Как сделать запускать эту команду через Runtime.getRuntime() Отв.?
Большое вам спасибо. –