【问题标题】:Why can't grails run two applications on the same port?为什么 grails 不能在同一个端口上运行两个应用程序?
【发布时间】:2011-03-23 13:42:37
【问题描述】:

使用 Tomcat 或 Glassfish,在 8080 端口上部署多个应用程序没有问题。但是如果您尝试同时在多个应用程序上执行 grails run-app(不指定不同的端口),您将收到一个 JVM绑定异常。

为什么 grails run-app 与将 .WAR 部署到容器不同?

【问题讨论】:

    标签: java tomcat grails


    【解决方案1】:

    将 .WAR 部署到容器

    容器本身绑定到一个端口。容器(Tomcat、Glassfish 等)能够托管多个应用程序

    grails 运行应用程序

    启动绑定到端口的自己的容器。此容器可能具有托管多个应用程序的能力,但这不是您在键入“run-app”时所做的事情

    【讨论】:

      【解决方案2】:

      我不是 grails 专家,但 Tomcat 和 Glassfish 是一个绑定到一个端口的进程/应用程序。然后它们托管在同一 VM 中运行的不同应用程序(Web/企业),并使用上下文根路由请求。

      我怀疑 grails run-app 在新的 JVM 实例中启动新应用程序作为新进程/并尝试将其绑定到端口。如果已经有绑定,那就不行了。

      【讨论】:

      • 这正是发生的事情。如果您已经设置了一个 tomcat 服务器并且只想在其中安装您的 grails 应用程序,您可以使用“grails tomcat deploy”和“grails tomcat undeploy”脚本在那里运行它,但是您会失去自动重新加载功能。跨度>
      猜你喜欢
      • 2015-11-07
      • 1970-01-01
      • 1970-01-01
      • 2023-01-19
      • 2012-02-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-25
      • 2012-06-28
      相关资源
      最近更新 更多