ホームページ  >  記事  >  Java  >  外部 JAR ファイルを実行し、Java GUI でランタイム出力を表示する方法

外部 JAR ファイルを実行し、Java GUI でランタイム出力を表示する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-31 06:08:30838ブラウズ

How to Execute External JAR Files and Display Runtime Output in a Java GUI?

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。