为什么grails不能在同一个端口上运行两个应用程序?

Eri*_*son 0 java grails tomcat

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

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

gmo*_*ore 7

将.WAR部署到容器

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

grails run-app

旋转绑定到端口的自己的容器.此容器可能具有托管多个应用程序的功能,但这不是您在键入"run-app"时所执行的操作


Tho*_*mas 5

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

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