在Grails3中grails -Dserver.port=9001 run-app
似乎不起作用:
我正在“收到已经绑定的地址8080”。
知道如何做到这一点 - 理想情况下通过将属性传递给“gradle run”?
答案 0 :(得分:37)
您可以使用
server:
port: 9001
application.yml
中的。
或者您可以通过系统环境传递它。 (例如SERVER_PORT=9001 grails run-app
)。
答案 1 :(得分:22)
grails run-app --port=8081
或以互动模式:
run-app --port=8081
当您想要停止服务器时,不要忘记使用相同的端口:
stop-app --port=8081
我相信这个功能在3.0.3及更早版本中被破坏了,但它肯定适用于3.0.4。
答案 2 :(得分:4)
接受的答案是正确的。有关其他信息,Grails 3使用spring-boot,服务器属性由
配置org.springframework.boot.autoconfigure.web.ServerProperties
类。 “port”只是这个类的一个属性,它从application.yml填充,前缀为“server”。因此,除了端口之外,您还可以设置此类的属性,包括tomcat配置属性等。例如,要更改contextPath,您需要添加
server:
contextPath: /myapp
你的application.yml。
答案 3 :(得分:3)
server:
port: 9809
contextPath: '/admin/'
您可以在application.yml文件中使用它
或更改端口取决于环境,例如:
environments:
test:
grails:
serverURL: "http://localhost:9809"