Rumah  >  Artikel  >  Java  >  Bagaimana untuk Melaksanakan Aplikasi Java Secara Bebas dari Lokasinya?

Bagaimana untuk Melaksanakan Aplikasi Java Secara Bebas dari Lokasinya?

Patricia Arquette
Patricia Arquetteasal
2024-11-06 10:36:02120semak imbas

How to Execute a Java Application Independently of Its Location?

Melaksanakan Aplikasi Java Secara Berasingan

Seseorang mungkin ingin melaksanakan aplikasi Java secara bebas daripada lokasinya menggunakan namanya dengan cara yang tidak bergantung pada sistem pengendalian.

Pelaksanaan

Sifat sistem Java menyediakan data yang membolehkan pembangunan laluan ke arahan java dan laluan kelas dalam bebas platform cara.

Kod berikut menunjukkan pelaksanaan ini:

<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>

Anda boleh melaksanakan kaedah ini seperti berikut:

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

Perhatikan bahawa kaedah ini menerima kelas sebenar sebaliknya daripada namanya sebagai rentetan kerana ia mesti disertakan dalam laluan kelas.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Aplikasi Java Secara Bebas dari Lokasinya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn