Maison  >  Article  >  Java  >  Comment exécuter une application Java indépendamment de son emplacement ?

Comment exécuter une application Java indépendamment de son emplacement ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-06 10:36:02120parcourir

How to Execute a Java Application Independently of Its Location?

Exécuter une application Java séparément

On peut souhaiter exécuter une application Java indépendamment de son emplacement en utilisant son nom d'une manière qui n'est pas dépendant du système d'exploitation.

Implémentation

Les propriétés du système Java fournissent des données qui permettent le développement du chemin d'accès à la commande Java et du chemin de classe dans un environnement indépendant de la plate-forme. manière.

Le code suivant illustre cette implémentation :

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

Vous pouvez exécuter cette méthode comme suit :

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

Notez que cette méthode accepte la classe réelle à la place de son nom sous forme de chaîne car il doit être inclus dans le chemin de classe.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn