Java GUI での外部 JAR ファイルの実行
ユーザーがボタンのクリックや表示で他の JAR ファイルを実行できるようにする Java GUI アプリケーションの作成実行時プロセスの詳細は、次の方法で実行できます。手順:
外部 JAR の実行:
外部 JAR ファイルを実行するには、Runtime.getRuntime().exec() を使用して別の Java プロセスを作成します。この関数はコマンドを文字列として受け取り、オペレーティング システム上で新しいプロセスを起動します。たとえば、A.jar を実行するには、次のコードを使用します:
<code class="java">Process proc = Runtime.getRuntime().exec("java -jar A.jar");</code>
プロセス出力の取得:
JAR を起動した後、そのランタイム出力を取得できます。プロセスの入力ストリームとエラー ストリームにアクセスすることで:
<code class="java">InputStream in = proc.getInputStream(); InputStream err = proc.getErrorStream();</code>
出力を表示GUI:
GUI で出力を表示するには、BufferedReader を使用して入力ストリームとエラー ストリームをバッファリングし、行を 1 つずつ読み取ります。その後、これらの行を GUI のテキスト領域または他の表示コンポーネントに追加できます。
コード例:
次のコード例は、2 つのボタンを持つ単純な GUI を作成します。 A.jar と B.jar をそれぞれ実行し、テキスト領域に出力を表示します:
<code class="java">import javax.swing.*; import java.awt.event.*; import java.io.*; public class JarExecutor extends JFrame { private JTextArea outputArea; private JButton buttonA, buttonB; public JarExecutor() { // ... // Setup GUI components // Create buttons buttonA = new JButton("A"); buttonA.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { executeJar("A.jar"); } }); buttonB = new JButton("B"); buttonB.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { executeJar("B.jar"); } }); // ... // Add buttons to GUI // Create text area for output outputArea = new JTextArea(); outputArea.setEditable(false); outputArea.setLineWrap(true); // ... // Add text area to GUI } private void executeJar(String jarPath) { try { Process proc = Runtime.getRuntime().exec("java -jar " + jarPath); BufferedReader in = new BufferedReader(new InputStreamReader(proc.getInputStream())); BufferedReader err = new BufferedReader(new InputStreamReader(proc.getErrorStream())); String line; while ((line = in.readLine()) != null) { outputArea.append(line + "\n"); } while ((line = err.readLine()) != null) { outputArea.append(line + "\n"); } } catch (IOException e) { outputArea.append("Error executing JAR: " + e.getMessage() + "\n"); } } // ... // Main method }</code>
以上が外部 JAR ファイルを実行し、Java GUI でランタイム出力を表示する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。