什麼樣的問題可能導致Java的ProcessBuilder.start方法返回一個IOException,並帶有一個說明error = 5的註釋?java.io.IOException的可能原因:CreateProcess錯誤= 5
具體而言,我們已經看到了正在運行的線沿線的一些Java代碼遠程客戶系統...
ProcessBuilder pb = new ProcessBuilder(cmdArray);
pb.redirectErrorStream(true);
Process p = pb.start();
...拋出這樣的例外......
java.io.IOException: CreateProcess: C:\example\example.exe argument1 argument2 error=5
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
at java.lang.ProcessBuilder.start(Unknown Source)
at example_code_above
我們已經證實,在例外情況中記錄的命令「C:\ example \ example.exe argument1 argument2」可以通過cmd.exe手動成功運行,所以我們確信命令本身沒有被破壞。
可能是錯誤5是針對「訪問被拒絕」。 (不知道) –
我在android中有相同的問題http://stackoverflow.com/questions/39245238/errorcreateprocess-error-193-1-is-not-a-valid-win32-application –