ホームページ  >  記事  >  Java  >  Java アプリケーションを場所に関係なく実行するにはどうすればよいですか?

Java アプリケーションを場所に関係なく実行するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-06 10:36:02120ブラウズ

How to Execute a Java Application Independently of Its Location?

Java アプリケーションを個別に実行する

Java アプリケーションを、名前を使用して場所とは関係なく別の方法で実行したい場合があります。

実装

Java システム プロパティは、プラットフォームに依存しない Java コマンドへのパスとクラスパスの開発を可能にするデータを提供します。

次のコードは、この実装を示しています。

<code class="java">public final class JavaProcess {
    public static int exec(Class klass, List<String> args) throws IOException, InterruptedException {
        String javaHome = System.getProperty("java.home");
        String javaBin = javaHome + File.separator + "bin" + File.separator + "java";
        String classpath = System.getProperty("java.class.path");
        String className = klass.getName();

        List<String> command = new LinkedList<>();
        command.add(javaBin);
        command.add("-cp");
        command.add(classpath);
        command.add(className);
        command.addAll(args);

        ProcessBuilder builder = new ProcessBuilder(command);
        Process process = builder.inheritIO().start();
        process.waitFor();
        return process.exitValue();
    }
}</code>

このメソッドは次のように実行できます。

<code class="java">int status = JavaProcess.exec(MyClass.class, args);</code>

このメソッドは代わりに実際のクラスを受け入れることに注意してください。クラスパスに含める必要があるため、その名前を文字列として使用します。

以上がJava アプリケーションを場所に関係なく実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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