Сбой Runtime.exec без каких-либо исключений / предупреждение / код ошибки - PullRequest
3 голосов
/ 16 февраля 2012

Это действительно странно и пожирает мои мозги.Я использую Runtime.exec для запуска другого jvm, и он тихо завершает работу даже без запуска.

        p = Runtime.getRuntime().exec("java classname", null, new File(workdir));

Процесс завершается немедленно.Я кратко вижу процесс в диспетчере задач, и он уходит.Я даже пытался захватить вывод.

        BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
        String errString = "Error Details:\n";
        String line;

        while((line = br.readLine()) != null)
            errString = errString.concat(line).concat("\n");

Строка пуста при первом вызове readline.Я знаю, что могу использовать ProcessBuilder, но я на Java 1.4, и я не могу перейти на 1.5.Пожалуйста, помогите.

Спасибо, Бикаш

Ответы [ 2 ]

1 голос
/ 16 февраля 2012

Я всегда указываю на этот сайт , когда у людей возникают проблемы с Runtime.exec ()

1 голос
/ 16 февраля 2012

Попробуйте поместить команды в массив командной строки:

Runtime.getRuntime().exec(new String[] {"java", "classname"}, null, new File(workdir));
...