Ответ 1
Посмотрите, работает ли это (извините, не могу проверить его прямо сейчас)
Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php", "-m", "2"});
Как мне выполнить команду в Java с параметрами?
я пробовал
Process p = Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php -m 2"});
который не работает.
String[] options = new String[]{"option1", "option2"};
Runtime.getRuntime().exec("command", options);
Это не работает так же, потому что параметр m
не указан.
Посмотрите, работает ли это (извините, не могу проверить его прямо сейчас)
Runtime.getRuntime().exec(new String[]{"php","/var/www/script.php", "-m", "2"});
Используйте ProcessBuilder
вместо Runtime#exec()
.
ProcessBuilder pb = new ProcessBuilder("php", "/var/www/script.php", "-m 2");
Process p = pb.start();
Следующее должно работать нормально.
Process p = Runtime.getRuntime().exec("php /var/www/script.php -m 2");