哪一个更好?更好地说,我指的是哪一个具有更好的安全性等等(不便于使用)。ProcessBuilder vs Runtime.exec()
14
A
回答
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();
}
+0
除了'Runtime.exec'有重载将'command'作为单个'String'并标记它的重载,但是在'ProcessBuilder'中,一个'String'被视为可变参数'String [1]' - 参见http ://stackoverflow.com/questions/6856028/difference-between-processbuilder-and-runtime-exec – 2017-05-18 21:08:45
相关问题
- 1. ProcessBuilder vs Runtime.exec()
- 2. ProcessBuilder和Runtime.exec之间的区别()
- 3. ProcessBuilder - 没有这样的文件或目录(但Runtime.exec()工作)
- 4. Java ProcessBuilder内存
- 5. Android Nougat,Runtime.exec不会工作
- 6. 如何使用Runtime.exec()或ProcessBuilder通过路径名打开谷歌浏览器?
- 7. 无法运行ProcessBuilder
- 8. Java Runtime OR Processbuilder或其他
- 9. runtime.exec参数中有空格
- 10. 改进Runtime.exec()
- 11. Method.invoke()与RunTime.exec()
- 12. 的Java的Runtime.exec()
- 13. Runtime.exec()bug:挂起
- 14. Java Runtime.exec(“sleep 180; ...”)
- 15. Runtime.exec不工作
- 16. Runtime.exec()不工作
- 17. aapt使用Runtime.exec()
- 18. GWT + ProcessBuilder
- 19. SFTP Processbuilder
- 20. Java ProcessBuilder
- 21. 的ProcessBuilder VS调用Runtime.getRuntime()EXEC不同的行为
- 22. 获取ProcessBuilder = new ProcessBuilder();工作,请帮忙
- 23. 带有绝对目录的Runtime.exec()
- 24. ProcessBuilder和带空间的命令
- 25. 使用ProcessBuilder/Runtime.exec()启动的外部进程在XP上失败,在Win 7上运行
- 26. 为什么Java Runtime.exec命令正常工作,但ProcessBuilder无法执行Perforce客户端命令?
- 27. Java ProcessBuilder问题
- 28. 检索的ProcessBuilder
- 29. 的ProcessBuilder在OSX
- 30. 使用processbuilder
你是什么意思与 '具有更好的安全性'? – 2011-05-04 16:44:35