Используя построитель процессов, чтобы получить поток этого процессаJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Используя построитель процессов, чтобы получить поток этого процесса

Сообщение Anonymous »


Я использую распространенное решение, которое использует класс BufferedReader для получения входного потока, но кажется, что если я вижу открытие командной консоли при работающем приложении, я не могу получить то, что там есть, в переменных нет данных, и они зависают на этапе readline(), наверняка потому, что данные не сбрасываются, поскольку приложение постоянно работает

public static void ExecuteCommandOnLocalMachine (построитель ProcessBuilder) выдает исключение { builder.redirectErrorStream(истина); Процесс процесса = builder.start(); Читатель BufferedReader = новый BufferedReader (новый InputStreamReader (process.getInputStream ())); Строковая строка = readLine.readLine(); в то время как (строка != ноль) { Log.info(строка); if(line.toLowerCase().contains("начал")) перерыв; линия = читатель.readLine(); } } звонил
public static String START_APPLICATION_MANAGER_COMMAND ="cd /D %VARENV%/../Application && start java -jar application.jar"; public static void startApplicationManager() выдает исключение { Построитель ProcessBuilder = новый ProcessBuilder("cmd.exe", "/C", GeneralConstants.START_APPLICATION_COMMAND); ProcessManager.executeCommandOnLocalMachine(строитель); }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»