Я пытаюсь захватить вывод из приложения java, но я чего-то не хватает. Я использую следующий пакетный файл:Захват вывода из java
@echo off
echo Start of batch
java makeQRCode
echo End of batch
Если я запустить пакетный файл из командной строки, я вижу 3 строки я ожидал.
Start of batch
Here is your java output.
End of batch
Когда я звоню пакетный файл, используя следующий код, я вижу только первые и последние строки, но не один в середине.
try{
Runtime rt = Runtime.getRuntime();
log.debug("Calling rt.exec...");
Process pr = rt.exec("c:\\adhoc\\java\\qrcode\\makeQRCode.bat");
BufferedReader input = new BufferedReader(new InputStreamReader(pr.getInputStream()));
String line=null;
while((line=input.readLine()) != null) {
out.print(line);
log.debug(line);
}
input.close();
int exitVal = pr.waitFor();
}catch (Exception e){
log.error("Error generating qr code: " + e.toString());
}
Вот мой выход журнала, когда приведенный выше код запускается:
2013-05-23 17:16:32,957 DEBUG _getimage - Start of batch
2013-05-23 17:16:33,126 DEBUG _getimage - End of batch
Я думаю, что я что-то отсутствует, связанный стандартный вывод, но я сейчас играет с ним часами и просто не могу» Правильно.
Благодаря
Это именно то, что было проблемой! Благодаря! –