Окружение в приложение не отображает свой вывод или ошибкиJAVA

Программисты JAVA общаются здесь
Anonymous
Окружение в приложение не отображает свой вывод или ошибки

Сообщение Anonymous »

У меня есть следующий код, который выходит на FFMPEG для подкастов Trancode. В настоящее время FFMPEG терпит неудачу, но код не показывает, что это за ошибка. Что мне нужно сделать, чтобы увидеть вывод из приложения Shelled? < /P>
public int processFile(String[] commandArray) {

int result = -1;

try {

LOGGER.debug( "Launching command: " + ArrayUtilities.displayArrayValues( commandArray ) );

ProcessBuilder pb = new ProcessBuilder( commandArray );
Process proc = pb.start();

PipeStream out = new PipeStream(proc.getInputStream(), System.out);
PipeStream err = new PipeStream(proc.getErrorStream(), System.err);
out.start();
err.start();

proc.waitFor();
result = proc.exitValue();
LOGGER.debug("Exit value is: " + result);
} catch (Exception e) {
LOGGER.warn("Program failed: " + e.getMessage());
}

return result;
}

private class PipeStream extends Thread {
InputStream is;
OutputStream os;

public PipeStream(InputStream is, OutputStream os) {
this.is = is;
this.os = os;
}

public void run() {
byte[] buffer = new byte[1024];
int len;
try {
while ((len = is.read(buffer)) >= 0) {
os.write(buffer, 0, len);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
< /code>
Редактировать: я понял, что искал ошибки в операторах журнала и не вижу их. Я изменил свой код, чтобы захватить sysout/syserr в файл и записать файл в журнал, чтобы теперь я мог увидеть, что я после.

Подробнее здесь: https://stackoverflow.com/questions/797 ... -or-errors

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