日期:2014-05-20  浏览次数:20859 次

java调用bat怎么没有反应????
Process p = Runtime.getRuntime().exec("cmd /c c:\\test.bat");
这样写,根本就执行不了;

加上start就可以了
Process p = Runtime.getRuntime().exec("cmd /c start c:\\test.bat");

但是加上start后,waitFor又没效果了...真是郁闷...


请问第一种方式怎么执行不了?????

------解决方案--------------------
waitFor不行的,即使你启动的DOS窗口没有关闭,它照样会执行结束,一种折衷的方法就是让bat执行完后写一个文件,然后JAVA去读取这个文件,可以设置一个超时时间,以免堵死了。