У меня проблема с тем, что я хочу запустить долго работающий процесс изнутри работающего Java-процесса и получить первоначальный вывод до его завершения.
т.е. запустите java -jar myapp.jar, который имеет модульные тесты и запускает длительный процесс приложения, установленного на той же машине, который будет работать, пока все мои тесты не будут завершены.
В обычном случае я бы просто использовал ProcessBuilder и делал что-то вроде:
ProcessBuilder pb = new
ProcessBuilder("ls");
Process p = pb.start();
BufferedReader br=new BufferedReader(
new InputStreamReader(
p.getInputStream()));
String line;
while((line=br.readLine())!=null){
System.out.println(line);
}
Как я могу поступить аналогичным образом и запустить длительный процесс, который не завершается в течение нескольких минут или пока я не завершу его, пока не получу вывод? Подойдет любое рабочее решение, оно не обязательно должно быть в ProcessBuilder.