我想一個Java程序執行以下shell命令:getRuntime()EXEC()什麼也不做
apktool.jar d /path/to/my/app.apk
此命令直接在命令行上執行它時會很好地工作。
Java代碼:
public static void main(String[] args) {
String command = "apktool d /path/to/my/app.apk";
try {
Runtime.getRuntime().exec(command);
} catch (IOException e1) {
e1.printStackTrace();
}
}
沒有錯誤,也不例外。沒有任何反應,我的印象是我已經在整個互聯網上搜索解決方案。有人知道我做錯了什麼嗎?一個簡單的命令像
的mkdir /路徑/到/ A /新/文件夾
作品沒有問題。
我試過使用的ProcessBuilder相同:
try {
Process process = new ProcessBuilder(command).start();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
這一次我只得到「無法運行程序‘apktool d /path/to/my/app.apk,沒有這樣的文件或目錄’我可以。你甚至不會運行mkdir命令
對不起,我編輯我的職務。 apktool是一個調用apktool.jar的.sh文件。 – null 2014-10-10 16:12:25
@null:同樣的想法 - 然後用'sh'命令運行它(我相信因爲我沒有做unix)。 – 2014-10-10 16:14:13
我用sh命令運行它,但沒有任何反應。我更新了我的問題,因爲我甚至無法使用ProcessBuilder運行mkdir。 – null 2014-10-10 16:21:41