📜  使用 Process 和 Runtime 在Java中调用外部程序

📅  最后修改于: 2022-05-13 01:55:02.925000             🧑  作者: Mango

使用 Process 和 Runtime 在Java中调用外部程序

Java包含通过简单的Java代码启动外部进程的功能——可执行文件或系统上的现有应用程序,例如 Google Chrome 或媒体播放器。一种方法是为此目的使用以下两个类:

  1. 进程类
  2. 运行时类

Java.lang 包中的 Process 类包含许多有用的方法,例如杀死子进程、使线程等待一段时间、返回子进程的 I/O 流等。随后,Runtime 类提供了与之交互的入口Java运行时环境。它包含执行进程、提供可用处理器数量、显示 JVM 中的可用内存等方法。

// A sample Java program (Written for Windows OS)
// to demonstrate creation of external process 
// using Runtime and Process
class CoolStuff
{
    public static void main(String[] args)
    {
        try
        {
            // Command to create an external process
            String command = "C:\Program Files (x86)"+
                 "\Google\Chrome\Application\chrome.exe";
  
            // Running the above command
            Runtime run  = Runtime.getRuntime();
            Process proc = run.exec(command);
        }
  
        catch (IOException e)
        {
            e.printStackTrace();
        }
    }
}

Runtime.getRuntime() 只返回与当前Java应用程序关联的 Runtime 对象。可执行路径在进程 exec(String path) 方法中指定。我们还有一个 IOException try-catch 块来处理找不到要执行的文件的情况。运行代码时,计算机上会打开一个 Google Chrome 实例。

另一种创建外部进程的方法是使用 ProcessBuilder,在下面的帖子中已经讨论过Java中的 ProcessBuilder 创建一个基本的在线法官