我的bat
文件中有4行内容,但是cmd窗口没有关闭时我的线程继续执行。
以下是我的代码:
rt = Runtime.getRuntime();
proc = rt.exec("cmd /c start C:\\temp\\test.bat");
if(proc.waitFor() == 0) {
return "did it";
} else {
return "nooope";
}
我总是在cmd关闭前得到“did it”。以下是我的批处理文件:
@ECHO off
taskkill /IM "Process.exe" /F
cd "C:\Program Files\ProcessFolder"
START /WAIT Process.exe
START otherProcess.exe
EXIT
需要帮助吗?
runtime.exec
Wiki链接的文章。实施最健壮的Process
使用建议。还要注意自Java1.5以来就拥有ProcessBuilder
。它比使用exec
更好-其中一个原因是它使消耗两个输出流(在链接的文章中提到)变得容易。 - Andrew Thompson