[問題] 透過 runtime.exec 執行問題 [解決]
不好意思我犯傻了... 我忘記在 Mac 建立 myBin/ 資料夾
大家好,想請問一下關於透過 Runtime 執行外部程式的問題
先說一下我的用法,我是用這個 method 執行:
runtime.exec( cmdArray , null , workDir )
workDir 是我拿來存放執行程式的 myBin/ (在我的執行路徑下)
cmdArray 則會偵測不同的作業系統採用不同的參數,假設我要執行
ls -l 或者 Windows 底下的 dir /a
則這個 array 就會是
String[]{ "cmd" , "/c" , "dir /a" } in Windows
String[]{ "/bin/bash" , "-c" , "ls -l" } in Mac
問題就在於,我在 Windows 底下測試是可以正常運作
但是在 Mac 就會出現錯誤:
java.io.IOException: Cannot run program "/bin/bash" (in directory "myBin"):
error=2, No such file or directory
我的已經給完整路徑(/bin/bash)了卻還是無法執行,
而且完整路徑就應該和 workDir 無關了吧?
還是我漏掉了什麼或者會錯意嗎? 謝謝大家~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.117.137.23
※ 文章網址: https://www.ptt.cc/bbs/java/M.1481096942.A.3DC.html
→
12/07 16:14, , 1F
12/07 16:14, 1F
之前直接用 bash 不行,不過我剛剛發現我改版之後忘記建立 myBin 資料夾
所以應該問題是出在無法找到工作目錄 QQ
解決了....
※ 編輯: darkk6 (122.117.137.23), 12/07/2016 16:38:47
java 近期熱門文章
PTT數位生活區 即時熱門文章