【问题标题】:start embedded Tomcat and open browser from command line启动嵌入式 Tomcat 并从命令行打开浏览器
【发布时间】:2018-02-07 11:51:43
【问题描述】:

我有一个使用嵌入式 Tomcat 的 Java Web 应用程序。我希望用户通过执行单个 .bat 文件 (Windows) 来打开它。

我使用这一行来启动 Tomcat:

java -cp "%cd%\apache-tomcat-8.0.8-embed\*;%cd%" Main

(main.java 启动 Tomcat)如果我把这行放在后面,除非我手动停止 Tomcat(Ctrl+C),否则它不会执行:

start http://127.0.0.1:8080/

如果我先打开浏览器,然后再启动 Tomcat,那么用户会在几秒钟内看到来自浏览器的错误消息(当 Tomcat 启动时),他们会感到恐慌;)

有没有办法在 Tomcat 启动后将焦点返回到脚本?或者其他一些解决方法?

在其他类似的线程中,我看到他们可以做到这一点,但是他们是通过执行 Tomcat.exe 文件来启动 tomcat,这不是我的情况,因为我需要使用这个嵌入式版本的 Tomcat,并启动它我开始的方式。

最好的情况是,如果我可以在 Tomcat 启动时显示一个“请稍候...”的临时页面,并在完成后显示我的应用程序的初始页面 (http://127.0.0.1:8080/)

任何帮助将不胜感激

【问题讨论】:

  • 如果在启动浏览器之前不等待Tomcat启动,总会有一段时间用户会看到404页面。您可以创建一个网页,持续 ping Tomcat 并在它达到 200 时重定向(当 Tomcat 未准备好时为 404)。
  • 这是个好主意!!,我没想到。我去试试

标签: java windows batch-file tomcat command-line


【解决方案1】:

如果我理解正确,您可以简单地使用start 命令启动java,而不会中断脚本的执行流程。换句话说,脚本不会等待java 进程结束,然后再执行下一个命令。

start java -cp "%cd%\apache-tomcat-8.0.8-embed\*;%cd%" Main

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-22
    • 1970-01-01
    • 2014-10-18
    相关资源
    最近更新 更多