Я бег другой баночки с этим кодом: (я обновляя графический интерфейс в некоторых частях, так что не чувствуют себя в замешательстве.) Я получаю исключение IO (поток Closed) здесь:Java - поток закрыт
if((line = readr.readLine()) != null){
То полный код:
if(!data.serverStarted()){
try{
data.updateConsole("Starting server!");
String fileDir = data.dir + File.separator + "craftbukkit.jar";
Process proc = Runtime.getRuntime().exec("java -Xmx2048M -jar "+"craftbukkit.jar"+" -o true --nojline");
data.setOutputStream(proc.getOutputStream());
InputStream is = proc.getErrorStream();
}catch(IOException ex){
ex.printStackTrace();
}
BufferedReader readr = new BufferedReader(new InputStreamReader(is));
data.setServerStarted(true);
String line;
while(data.serverStarted()){
try {
if((line = readr.readLine()) != null){
data.updateConsole(line);
}
} catch (IOException e) {
e.printStackTrace();
}finally{
try {
readr.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}else{
data.updateConsole("You have already started your server!");
}
Я с удовольствием добавлю исправления в любые актуальные проблемы, если нисходящий будет писать комментарии. – chrylis