我正在使用 Runtime.getRuntime().exec() 从 java 代码运行 shell 脚本。
String[] cmd = {"sh", "build.sh", "/Path/to my/sh file"};
try{
Process proc = Runtime.getRuntime().exec( cmd );
}
catch(Exception e){
System.out.println("Exception is:"+e);
}
它在控制台中给了我以下输出:
sh: Can't open build.sh
我在这里遵循一些错误的方法吗?无法弄清楚他为什么会发生。
编辑
String[] cmd = {"sh", "build.sh", "/Path/to my/sh file"};
根据此处的评论,我已将String[] cmd = {"sh", "/Path/to my/sh file/build.sh", "/Path/to my/sh file"};
. 现在的问题是该脚本需要从特定路径执行。当我从命令提示符执行此脚本时,我首先将目录更改为该路径并执行它。我应该如何修改这段代码?