Maison >Java >javaDidacticiel >Comment lancer des processus externes en Java ?

Comment lancer des processus externes en Java ?

DDD
DDDoriginal
2024-11-17 21:55:02622parcourir

How to Launch External Processes in Java?

Lancement de processus externes en Java

Dans le framework .NET, le démarrage d'un processus s'effectue à l'aide de System.Diagnostics.Process.Start("processname"). Cela permet aux utilisateurs de lancer facilement n'importe quel exécutable disponible sur leur système. Mais comment pouvons-nous obtenir la même fonctionnalité en Java ?

Java Process Invocation

Java fournit la méthode Runtime.exec() pour lancer des processus externes. Il prend une commande comme argument de chaîne et renvoie un objet Process qui représente le processus en cours d'exécution. Semblable à Process.Start() de .NET, Runtime.exec() permet aux utilisateurs de lancer des applications indépendantes du système d'exploitation.

Exemple de code

Pour démontrer l'invocation de processus en Java, considérez ce qui suit code :

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.nio.file.Paths;

public class CmdExec {

  public static void main(String[] args) {
    try {
      // Get the path to 'tree.com' (which displays the directory tree)
      String treePath = Paths.get(System.getenv("windir"), "system32", "tree.com").toString();

      // Start the 'tree.com' process
      Process p = Runtime.getRuntime().exec(treePath);

      // Read and print the output of the process
      BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));
      String line;
      while ((line = input.readLine()) != null) {
        System.out.println(line);
      }

    } catch (Exception err) {
      err.printStackTrace();
    }
  }
}

Ce script montre comment démarrer un processus externe (tree.com dans ce cas) et capturer sa sortie. Le processus se lance quel que soit le système d'exploitation, ce qui en fait une solution portable.

Ressources supplémentaires

Pour plus d'informations sur l'invocation de processus en Java, reportez-vous à :

  • [Documentation Java sur Runtime.exec()](http://www.rgagnon.com/javadetails/java-0014.html)
  • [Récupération des propriétés système en Java](http://download.oracle.com/javase /tutorial/essential/environment/sysprop.html)

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