获取Windows批处理文件以在后台执行应用程序,然后执行下一个语句

时间:2017-08-24 22:27:24

标签: windows batch-file

我在尝试让我的Windows批处理文件在后台启动Jetty Web服务器然后启动IE时遇到问题。目前的行为是,它启动我的Jetty Web服务器后,它不会返回启动IE。它只是停留在那里,直到我终止Web服务器,然后批处理脚本将继续并启动IE。

这是我的批处理脚本

SET JAVA_HOME=".\openjdk-1.8.0.141"
SET JETTY_HOME=".\jetty-distribution-9.4.6.v20170531"

start /B cd /d "%~dp0" & %JAVA_HOME%\bin\javaw -DSTOP.PORT=8081 -DSTOP.KEY=stop_jetty -Djetty.base=%JETTY_HOME% -jar %JETTY_HOME%\start.jar

"C:\Program Files\Internet Explorer\iexplore.exe" http://localhost:8080/foo-tools

你能发现一些明显的东西吗?我已经使用'start / B'尝试在后台启动它。我必须将目录更改回当前工作目录,否则我设置的变量将无效。

提前致谢!

1 个答案:

答案 0 :(得分:0)

为什么不简化事情并使用$(document).on("click", ".fa-bars", function() {}); START 参数规定脚本路径?

/D <Path>

我错过了SET "JAVA_HOME=openjdk-1.8.0.141" SET "JETTY_HOME=jetty-distribution-9.4.6.v20170531" START "" /D "%~dp0" "%JAVA_HOME%\bin\javaw" -DSTOP.PORT=8081 -DSTOP.KEY=stop_jetty -Djetty.base="%JETTY_HOME%" -jar "%JETTY_HOME%\start.jar" START "" "%PROGRAMFILES%\Internet Explorer\iexplore.exe" http://localhost:8080/foo-tools START 参数,因为我理解/B无论如何都不会打开CMD窗口。如果我的理解不正确,请在javaw.exe之前添加回来。

如果您再次需要脚本或者不希望cmd窗口保持打开状态,则只需要IE的"%JAVA_HOME%命令。