Maison  >  Article  >  Java  >  Les applications Java peuvent-elles s'exécuter séparément en fonction de leurs noms ?

Les applications Java peuvent-elles s'exécuter séparément en fonction de leurs noms ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-03 21:40:30653parcourir

Can Java Applications Run Separately Based on Their Names?

Invocation d'applications Java dans des processus indépendants

Question :

Les applications Java peuvent-elles être exécutées dans des processus distincts en fonction de leurs noms , quel que soit leur emplacement ?

Réponse :

Oui, il est possible d'exécuter des applications Java dans des processus distincts en utilisant leurs noms, plutôt que leurs chemins de fichiers. Ceci peut être réalisé indépendamment de la plate-forme en exploitant les propriétés du système Java.

Pour exécuter une application Java dans un processus distinct, vous pouvez utiliser l'approche suivante :

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

Utilisation :

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

Cette approche s'intègre de manière transparente au mécanisme de chemin de classe, permettant une exécution facile des applications quel que soit leur emplacement physique.

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