繁体   English   中英

使用Java ProcessBuilder执行Windows批处理文件始终返回退出代码0

[英]Execution of Windows batch file using Java ProcessBuilder always returns exit code 0

我正在尝试执行批处理文件,并从Windows 7 Enterprise 64位版本中获取错误代码。

我的批处理文件是c:\\ test.cmd,其中包含一行:

exit 1

我执行批处理文件的代码是:

public static void main(String[] args) throws Exception {
       Process process = new ProcessBuilder("c:\\test.cmd").start();
       System.out.println(process.waitFor());
}

输出为零。 如果我尝试:

new String[] {"cmd", "/c", "c:\\test.cmd"}

结果再次为零。

我缺少的ProcessBuilder API似乎没有太多魔力。 谁能看到我的代码出了问题?

我是否应该能够捕获批处理文件的退出代码?

我认为我的电脑有问题(或不同)。 捕获返回代码时,我下载的Apache Commons Exec项目源代码失败了单元测试。 似乎在我的PC上无法解决,但未找到解决方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM