2013-04-01 73 views
2

我需要从批处理脚本运行两个java程序。我需要等第一个Java程序在第二个Java程序开始运行之前完成运行。有没有办法做到这一点?我在一台Windows机器上,我无法编辑Java程序,所以我正在使用批处理脚本来启动它们。在等待java完成时暂停批处理文件

因此,这将是这样的

cd %PARSEDIR% 
set CLASSPATH=.\lib\jpcap-0.01.16.jar 
set CLASSPATH=%CLASSPATH%;.\lib\jpcap.jar 
START /WAIT java -Xms768m -Xmx768m -classpath %CLASSPATH% parser.test.firstStage %2 
timeout 5 
START /WAIT java -Xms768m -Xmx768m -classpath %CLASSPATH% parser.test.lastStage %2 

我需要的第一个程序完成之前,该批处理脚本移动上。我该如何做到这一点?

谢谢!

编辑:添加了代码现在看起来像

+0

这将是丑陋,但你可以有整个事情作为一个Java程序,它调用两个主()来自操作系统的其他类和命令的方法。 –

+0

还有一些其他的东西需要在蝙蝠中完成,我不想重新编码到java中,但如果我无法得到这个工作 – Jack

回答

2

使用start /WAIT命令(http://ss64.com/nt/start.html

+0

我使用start/wait命令,但是某些东西不是真的工作正常,它只是开始然后关闭java进程。 – Jack

+0

@Jack当你运行你的Java进程时_standalone_它也马上关闭了吗?请同时分享你的批处理文件 –

+0

当我运行java进程独立时,它工作正常。我有两个单独的批处理文件,每个进程独立运行,这些批处理文件正常工作。 – Jack