哪一个更好?更好的意思是哪一个具有更好的安全性等(不易使用)。
答案 0 :(得分:31)
易用性是这两者之间唯一真正的区别。
请注意,易用性可以通过帮助避免误用来提高安全性。
至少在OpenJDK 6 Runtime.exec()
上使用ProcessBuilder
:
public Process exec(String[] cmdarray, String[] envp, File dir)
throws IOException {
return new ProcessBuilder(cmdarray)
.environment(envp)
.directory(dir)
.start();
}