プロセスの作成

プロセスを作成するには、まずProcessBuilderクラスにコマンド名とその引数などのプロセスの属性を指定します。次に、ProcessBuilder.startメソッドを使用してプロセスを起動します。これによってProcessインスタンスが返されます。

次の行によってプロセスが作成および起動されます。

  ProcessBuilder pb = new ProcessBuilder("echo", "Hello World!");
  Process p = pb.start();

次の引用では、setEnvTestメソッドによってhorsedocの2つの環境変数が設定され、次にechoコマンドによってこれらの環境変数(およびシステム環境変数HOME)の値が出力されます:

  public static void setEnvTest() throws IOException, InterruptedException {
    ProcessBuilder pb =
      new ProcessBuilder("/bin/sh", "-c", "echo $horse $dog $HOME").inheritIO();
    pb.environment().put("horse", "oats");
    pb.environment().put("dog", "treats");
    pb.start().waitFor();
  }

このメソッドの出力を次に示します(ホーム・ディレクトリは/home/adminであるとします)。

oats treats /home/admin