У меня есть проблема отправки команд на сервер Bukkit для Minecraft. Мой код отлично работает для Vanilla, но когда я пробую его с Bukkit, он, похоже, больше не хочет работать. Я все еще могу получить весь вывод с сервера, я просто не могу отправлять команды вроде «Справка» или «Стоп». Это мой класс для обработки потока сервера.Не удается отправить команды на сервер Bukkit
public class Sender{
ConsoleWriter cWriter = new ConsoleWriter();
private BufferedWriter writer;
private OutputStreamWriter out;
public void execute(){
this.ui = ui;
try{
ProcessBuilder pb = new ProcessBuilder(path_to_server+"launch.bat");
Process process = pb.start();
StreamGobbler sgError = new StreamGobbler(process.getErrorStream());
new Thread(sgError).start();
out = new OutputStreamWriter(process.getOutputStream());
writer = new PrintWriter(out);
} catch (IOException e){
e.printStackTrace();
}
}
private class StreamGobbler implements Runnable
{
private InputStream is;
public StreamGobbler(InputStream is){
this.is = is;
}
@Override
public void run() {
try {
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String line = null;
while ((line = br.readLine()) != null){
cWriter.writer(line, ui);
}
} catch (IOException e){
e.printStackTrace();
}
}
}
}
Так что же здесь происходит? почему он отлично работает для Ваниль, но не Bukkit?
Спасибо!
Люди, живущие по адресу http://gaming.stackexchange.com/, могут иметь больше опыта с вопросами, связанными с bukkit. –
@ChrisZhang При взгляде на этот сайт это не похоже на код, а на проблемы с самими играми. Это не то, что я ищу. Спасибо за предложение. –