0

Java で 2 つのボタンを使用してゲーム Minecraft のサーバーを起動および停止する方法を、一生理解できません。

これまでのところ、私はこの混乱を抱えています..

try
        {
            ProcessBuilder processBuilder = new ProcessBuilder("/Users/UserName/Desktop/servers/test/launch.sh");
            Process server;
            if (event.getSource() == start_Btn)
            {
                server = processBuilder.start();
                //OutputStream out = server.getOutputStream();
                start_Btn.setText("Started");

            }   
            else if (event.getSource() == stop_Btn)
            {

                OutputStream out = server.getOutputStream();
                server.getOutputStream().write(new String("stop").getBytes("utf-8"));

                stop_Btn.setText("Stoped");
                start_Btn.setText("Start");

            }
        }
        catch (IOException exception)
        {

        }
        catch (InterruptedException exception)
        {

        }

私は今日一日中インターネットを探し回っていましたが、ついにあなたたちにそれをもたらすことに決めました.

「開始」ボタンを押してサーバーを起動し、「停止」ボタンで停止できるようにしたい GUI をセットアップしており、ボタン イベントのセットアップ方法を知っています。スタートボタンでサーバーを簡単に起動できます。これは、管理できないように見える停止機能です。

注: サーバーを停止するには、サーバーを起動したコマンド ラインで「stop」と入力する必要があります。

大変お世話になりました。

4

2 に答える 2

0

今日も同じ作業をしていました。私は Java の初心者ですが、不足しているものを見つけたと思います。私は多かれ少なかれあなたのリードに従いましたが、停止コマンドではスラッシュを使用します "/stop"

また、アクションを完了するために出力ストリームを閉じる必要があったようです。

private void stopButtonActionPerformed(java.awt.event.ActionEvent evt) {                                           
    // TODO add your handling code here:
    try {
        oS.write(new String("/stop").getBytes("utf-8"));
        oS.close();
    } catch (IOException e) {
        e.printStackTrace();
    }

}               

これがお役に立てば幸いです。

于 2013-01-21T03:06:01.430 に答える