Java.lang.Runtime.exec() Method


The java.lang.Runtime.exec(String command) method executes the specified string command in a separate process. This is a convenience method. An invocation of the form exec(command) behaves in exactly the same way as the invocation exec(command, null, null).


Following is the declaration for java.lang.Runtime.exec() method

public Process exec(String command)


command − a specified system command.

Return Value

This method returns a new Process object for managing the subprocess


  • SecurityException − If a security manager exists and its checkExec method doesn't allow creation of the subprocess

  • IOException − If an I/O error occurs

  • NullPointerException − If command is null

  • IllegalArgumentException − If command is empty


The following example shows the usage of lang.Runtime.exec() method.

package com.tutorialspoint;

public class RuntimeDemo {

   public static void main(String[] args) {
      try {

         // print a message
         System.out.println("Executing notepad.exe");

         // create a process and execute notepad.exe
         Process process = Runtime.getRuntime().exec("notepad.exe");

         // print another message
         System.out.println("Notepad should now open.");

      } catch (Exception ex) {

Let us compile and run the above program, this will produce the following result −

Executing notepad.exe
Notepad should now open.