當我嘗試在Windows機器上從我的java程序執行下面一行時,出現以下錯誤。從窗口執行使用ProcessBuilder的命令
請讓我知道使這項工作的詳細步驟?
final Process exec = new ProcessBuilder("bash", "-c", query).start();
錯誤:java.io.IOException異常:不能運行程序 「打擊」:CreateProcess的錯誤= 2,系統找不到指定的文件
當我嘗試在Windows機器上從我的java程序執行下面一行時,出現以下錯誤。從窗口執行使用ProcessBuilder的命令
請讓我知道使這項工作的詳細步驟?
final Process exec = new ProcessBuilder("bash", "-c", query).start();
錯誤:java.io.IOException異常:不能運行程序 「打擊」:CreateProcess的錯誤= 2,系統找不到指定的文件
Windows有沒有bash的,所以你必須使用「CMD」(命令)。 「bash」正在用於unix系統。
這應該工作在Windows上:
final Process exec = new ProcessBuilder("CMD", "/C", query).start();
,如果你想了解如何在Windows中使用的ProcessBuilder一個很好的例子:External programs using Java ProcessBuilder class
如果你只是執行bash命令,你需要的是bash庫爲java。
final Process exec = new ProcessBuilder("bash", "-c", query).start();
由於錯誤指示,沒有可執行程序的bash,通常在安裝,在位置/斌/ bash的Unix系統bash的,所以你必須提供的路徑,你的程序。 即使相對路徑也有效。下面的這個命令可以在安裝了bash的Unix上運行。
final Process exec = new ProcessBuilder("/bin/bash", "-c", query).start();
它無法找到一個名爲bash的程序......你可以從命令行運行'bash'嗎? – assylias