28

在 Grails3grails -Dserver.port=9001 run-app中似乎不起作用:

我正在“获取地址已经绑定 8080”。

知道如何做到这一点 - 理想情况下通过将属性传递给“gradle run”?

4

4 回答 4

39

您可以使用

server:
  port: 9001

application.yml.

或者您可以通过系统环境传递它。(例如SERVER_PORT=9001 grails run-app)。

于 2015-02-09T15:47:04.983 回答
23
grails run-app --port=8081

或在交互模式下:

run-app --port=8081

当你想停止服务器时,不要忘记使用相同的端口:

stop-app --port=8081

我相信这个功能在 3.0.3 和更早的版本中被破坏了,但它在 3.0.4 中肯定可以工作。

于 2015-07-31T13:43:07.850 回答
4

接受的答案是正确的。对于一些附加信息,Grails 3 使用 spring-boot 并且服务器属性由

org.springframework.boot.autoconfigure.web.ServerProperties

班级。“port”只是这个类的一个属性,它从 application.yml 中填充,前缀为“server”。因此,除了端口之外,您还可以设置此类的属性,包括 tomcat 配置属性等。要更改 contextPath 例如您添加

server: 
   contextPath: /myapp

给你 application.yml。

于 2015-04-09T13:26:28.833 回答
3
  server:
  port: 9809
  contextPath: '/admin/'

你可以在你的 application.yml 文件中使用它

或更改端口取决于环境,例如:

    environments:
        test:
            grails:
                serverURL: "http://localhost:9809"
于 2018-02-04T09:49:25.787 回答