0
如何確定在Java中啓動進程的路徑是否可執行?換句話說:確定文件是否表示可執行進程
new java.io.File("ls") .canExecute(); // false (!)
new java.io.File("/bin/ls").canExecute(); // true
我如何工作第一線的故障檢測「LS」可以安全地開始作爲一個過程周圍(而不必弄清楚它的絕對位置)?
如何確定在Java中啓動進程的路徑是否可執行?換句話說:確定文件是否表示可執行進程
new java.io.File("ls") .canExecute(); // false (!)
new java.io.File("/bin/ls").canExecute(); // true
我如何工作第一線的故障檢測「LS」可以安全地開始作爲一個過程周圍(而不必弄清楚它的絕對位置)?
如果路徑是簡單的嘗試PATH
搜索或使用File.canExecute()
在PATH搜索
相反,你可以開始Process
和捕獲異常(沒有測試雖然)
Process process = new ProcessBuilder("ls").start();
所以'的java .lang.System.getenv.get( 「PATH」)'?這與'Runtime.exec'試圖解決簡單路徑的方式是一樣的嗎?這是跨平臺嗎? – 2014-09-02 18:10:31
是的。這是你想要的。它不是跨平臺的。在不同的平臺上,您可以使用不同的分隔符獲得字符分隔符是'File.pathSeparator' – talex 2014-09-02 18:14:40