我正在开发一个命令行java应用程序,它必须在这个目录下运行一个名为gradlew.bat assembleRelease的程序: this.workdir+"/Project/CapAndroid"
所以我这样做了:
Process p = Runtime.getRuntime().exec("gradlew.bat assembleRelease",null,new File(this.workdir+"/Project/CapAndroid"));
该文件是100%确定的目录,它在Linux中完美的工作,但没有在Windows上工作! 我得到这个错误:
java.io.IOException:无法运行程序“gradlew.bat”(在目录“C: Users AdminisTrador Desktop generators And jobs 2247994 Project CapAndroid”):CreateProcess error = 2,系统找不到指定的文件
什么是正确的batch file语法?
更改* .foo到* .bar在unix单行
Shell:列出按文件计数sorting的目录(包括在子目录中)
我怎样才能找出一个linux命令完全是什么?
在Word Doc文件中recursion地find一个带有通配符的string,输出到文本文件,如何摆脱Word垃圾?
我认为Windows有一个问题,知道传递给exec()方法的第一个参数的命令必须在最后一个parameter passing的目录中执行。 Linux工作完美,也是OS X,问题只在Windows
非常感谢
Windows“cmd.exe”是否以不同的方式parsing参数?
使用grep反转函数来比较两个md5哈希列表
如何使用命令提示符更新不可变的js新版本..?
如何更新Perl命令行应用程序上的进度显示?
Bash脚本不会继续读取文件的下一行
那么,我终于解决了它的.bat文件的名称之前添加cmd /c ,现在它完美的作品:
Process p = Runtime.getRuntime().exec("cmd /c gradlew.bat assembleRelease",new File(this.workdir+"/Project/CapAndroid"));
我希望这将有助于未来的人
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。