ホームページ  >  記事  >  Java  >  Java アプリケーションは名前に基づいて個別に実行できますか?

Java アプリケーションは名前に基づいて個別に実行できますか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-03 21:40:30656ブラウズ

Can Java Applications Run Separately Based on Their Names?

独立したプロセスでの Java アプリケーションの呼び出し

質問:

Java アプリケーションは、名前に基づいて別のプロセスで実行できますか?

答え:

はい、ファイル パスではなく名前を使用して、別のプロセスで Java アプリケーションを実行することができます。これは、Java システム プロパティを活用することで、プラットフォームに依存しない方法で実現できます。

Java アプリケーションを別のプロセスで実行するには、次のアプローチを使用できます。

<code class="java">public class JavaProcess {

    public static int execute(Class<?> appClass, 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 = appClass.getName();

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

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

使用法:

<code class="java">int exitCode = JavaProcess.execute(MyApplicationClass.class, arguments);</code>

このアプローチはクラスパス メカニズムとシームレスに統合され、物理的な場所に関係なくアプリケーションを簡単に実行できます。

以上がJava アプリケーションは名前に基づいて個別に実行できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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