Run .exe file in Java from file location Run .exe file in Java from file location windows windows

Run .exe file in Java from file location


You don't need a console. You can execute a process using a working directory:

exec(String command, String[] envp, File dir)

Executes the specified string command in a separate process with the specified environment and working directory.

  • command is the location of the .exe
  • envp can be null
  • dir, is the directory of your .exe

With respect to your code it should be...

Runtime.getRuntime().exec("c:\\program files\\test\\test.exe", null, new File("c:\\program files\\test\\"));


You can use Runtime.exec(java.lang.String, java.lang.String[], java.io.File) where you can set the working directory.

Or else you can use ProcessBuilder as follows:

ProcessBuilder pb = new ProcessBuilder("myCommand", "myArg1", "myArg2");pb.directory(new File("myDir"));Process p = pb.start();


Another way of running a file is the following:

import java.awt.Desktop;import java.io.File;public static void open(String targetFilePath) throws IOException{    Desktop desktop = Desktop.getDesktop();    desktop.open(new File(targetFilePath));}