Heim  >  Artikel  >  Java  >  Können Java-Anwendungen basierend auf ihren Namen separat ausgeführt werden?

Können Java-Anwendungen basierend auf ihren Namen separat ausgeführt werden?

Barbara Streisand
Barbara StreisandOriginal
2024-11-03 21:40:30654Durchsuche

Can Java Applications Run Separately Based on Their Names?

Aufrufen von Java-Anwendungen in unabhängigen Prozessen

Frage:

Können Java-Anwendungen basierend auf ihren Namen in separaten Prozessen ausgeführt werden? , unabhängig von ihrem Standort?

Antwort:

Ja, es ist möglich, Java-Anwendungen in separaten Prozessen unter Verwendung ihrer Namen und nicht ihrer Dateipfade auszuführen. Dies kann plattformunabhängig durch die Nutzung von Java-Systemeigenschaften erreicht werden.

Um eine Java-Anwendung in einem separaten Prozess auszuführen, können Sie den folgenden Ansatz verwenden:

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

Verwendung:

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

Dieser Ansatz lässt sich nahtlos in den Klassenpfadmechanismus integrieren und ermöglicht die einfache Ausführung von Anwendungen unabhängig von ihrem physischen Standort.

Das obige ist der detaillierte Inhalt vonKönnen Java-Anwendungen basierend auf ihren Namen separat ausgeführt werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn