I am trying to use this code in my Java application to run another Jar in Mac OS X :
Runtime runtime = Runtime.getRuntime();
String cmd = "java -Xmx1024m -jar \"/Volumes/NANO PRO/My Program/Main.jar\"";
Process process = runtime.exec( cmd );
If Main.jar exists in a path with no spaces it will work fine, but since it exists in a path with spaces, it causes the error :

Is there a way to make this run in a path that has spaces ?
Use an array to build different parts of your command and leave it to Java runtime to convert them appropriately based on the underlying environment.
Also you can take a look at ProcessBuilder: