HOWTO · Java
Java Lang Runtime exec() Methode in Java
Dieses Tutorial demonstriert die Laufzeitmethode exec() in Java.
Dieses Tutorial demonstriert die Methode Runtime.exec() von Java.
Java Lang Runtime exec()-Methode in Java
Die Java-Lang-Laufzeitklasse wird für die Interaktion zwischen jeder Java-Anwendung mit einer Instanz der Klassenlaufzeit und der Umgebungsschnittstelle verwendet. Die Methode Runtime.getRuntime.exec() wird verwendet, um einen String-Befehl in einem Prozess auszuführen.
Die Methode Runtime.exec() kann auf folgende Arten implementiert werden:
| Methode | Aktion |
|---|---|
exec(Zeichenfolge cmd) |
Dies wird verwendet, um einen Zeichenfolgenbefehl in einem Prozess auszuführen. |
exec(String[] cmd) |
Dies wird verwendet, um bestimmte Befehle mit Argumenten in einem Prozess auszuführen. |
exec(String-Befehl, String[] envp, Dateiverzeichnis) |
Dies wird verwendet, um einen einzelnen Zeichenfolgenbefehl in einem Prozess mit einer bestimmten Umgebung und einem bestimmten Verzeichnis auszuführen. |
exec(String-Befehl, String[] envp) |
Dies wird verwendet, um einen einzelnen Zeichenfolgenbefehl in einem Prozess mit einer bestimmten Umgebung auszuführen. |
exec(String[] cmdarray, String[] envp, Dateiverzeichnis) |
Dies wird verwendet, um Zeichenfolgenbefehle mit Argumenten in einem Prozess mit einer bestimmten Umgebung und einem bestimmten Verzeichnis auszuführen. |
exec(String[] cmdarray, String[] envp) |
Dies wird verwendet, um Zeichenfolgenbefehle mit Argumenten in einem Prozess mit einer bestimmten Umgebung auszuführen. |
Versuchen wir ein Beispiel, um die Methode Runtime.exec() in Java zu implementieren:
package delftstack;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
// Main class
public class Example {
// Main driver method
public static void main(String[] args) throws InterruptedException {
try {
// Use Runtime.getRuntime.exec on a separate process
Process Demo_Process = Runtime.getRuntime().exec("java -version");
// Get the output in the console
String Output_Line;
InputStreamReader Input_Stream_Reader = new InputStreamReader(Demo_Process.getInputStream());
BufferedReader Buffered_Reader = new BufferedReader(Input_Stream_Reader);
while ((Output_Line = Buffered_Reader.readLine()) != null) {
System.out.println(Output_Line);
}
Input_Stream_Reader = new InputStreamReader(Demo_Process.getErrorStream());
Buffered_Reader = new BufferedReader(Input_Stream_Reader);
while ((Output_Line = Buffered_Reader.readLine()) != null) {
System.out.println(Output_Line);
}
// Wait for the process to complete
Demo_Process.waitFor();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
Der obige Code führt die Methode Runtime.getRuntime.exec() mit dem Befehl java -version aus und erhält die Ausgabe in der Konsole. Siehe Ausgabe
java version "17.0.2" 2022-01-18 LTS
Java(TM) SE Runtime Environment (build 17.0.2+8-LTS-86)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.2+8-LTS-86, mixed mode, sharing)