Хорошо, я пытаюсь создать оболочку графического интерфейса пользователя Java для другого приложения.У меня проблема в том, что у меня проблемы с выходом "вживую".В этот момент приложение выплевывает весь вывод приложения в конце выполняемого процесса.Поскольку запущенное приложение представляет собой инструмент рендеринга карт для игры Minecraft, выходные данные в основном являются индикатором прогресса текущей работы, поэтому он должен быть активным.Код, который я использовал на данный момент:
package net.rymate.overviewer;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
/**
*
* @author ryan
*/
public class Testmain {
public Testmain(String commandline) {
try {
String line;
Process p = new ProcessBuilder(commandline, "C:/exmaple/ C:/output").start();
BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
BufferedReader err = new BufferedReader(new InputStreamReader(p.getErrorStream()));
while ((line = input.readLine()) != null) {
System.out.println(line);
}
while ((line = err.readLine()) != null) {
System.out.println(line);
}
input.close();
} catch (Exception err) {
err.printStackTrace();
}
}
public static void main(String[] args) {
//new Testmain("C:/Documents and Settings/ryan/My Documents/overviewer-0.4.22-win32/overviewer.exe -v");
new Testmain("C:/Documents and Settings/ryan/My Documents/overviewer-0.4.22-win32/overviewer.exe");
}
}
Любая помощь будет принята с благодарностью.:)
РЕДАКТИРОВАТЬ: кажется, что приложение может только выводить что-либо, кроме ошибок, если оно не запускается через cmdТак есть ли способ запустить его через cmd через эту реализацию?