请考虑以下从 Eclipse 运行的代码段。
即使外部 jar 文件不存在,也不会抛出异常并且process
不为空。为什么会这样?
try {
Process process = Runtime.getRuntime().exec("java -jar NonExisting.jar");
if (process == null)
System.out.println("process = null");
else
System.out.println(process);
} catch (IOException e) {
System.err.println(e);
}
它打印
java.lang.ProcessImpl@1a4d139
如果我从命令行手动运行它,则会出现错误:
C:\Users\workspace\Project\src>java -jar NonExisting.jar
Error: Unable to access jarfile NonExisting.jar