从同一批处理文件运行多个批处理文件时出现问题

时间:2014-04-28 09:07:05

标签: java windows batch-file cmd

我正在尝试从first.bat文件调用second.bat文件(意思是说first.bat是主文件,它调用second.bat而second.bat调用一个)。

first.bat

echo Going to call second batch file

call second.bat

echo End of first batch file.

exit 0

second.bat

@echo off

setLocal EnableDelayedExpansion

cmd /c start /b jre\bin\java -Djava.library.path=nativelib -classpath SampleTest.jar com.test.SampleTest argument1

这里的问题是当我从第一个批处理文件调用second.bat时,second.bat文件没有将控制权交还给first.bat文件。 它只是悬挂

我从second.bat文件调用一个Java进程,在成功启动该进程后,控件应该返回到first.bat并完成first.bat的其余活动。

这里的控件没有回来。

任何人都可以帮助我,告诉我如何实现这种情况。

提前致谢。

1 个答案:

答案 0 :(得分:2)

我猜测你的Second.bat包含一行如下:

  java MyJavaProgram

如果是这种情况,那么在java进程退出之前,您的第二个Second.bat将不会返回。 如果您想在退出之前启动该流程,则需要在新的cmd.exe中启动它:

  start "" /b "java MyJavaProgram"

根据OP的更新,试试这个:

start "" /b jre\bin\java -Djava.library.path=nativelib -classpath SampleTest.jar com.test.SampleTest argument1