Grails 3 - изменить порт по умолчанию для запуска приложения

В Граалях3 grails -Dserver.port=9001 run-app не работает

Я "получаю адрес уже связан 8080".

Любая идея, как это сделать - в идеале, передав свойство "Gradle Run"?

4 ответа

Ты можешь использовать

server:
  port: 9001

в application.yml,

Или вы можете передать его через системную среду. (например SERVER_PORT=9001 grails run-app).

grails run-app --port=8081

Или в интерактивном режиме:

run-app --port=8081

Не забудьте использовать тот же порт, когда вы хотите остановить сервер:

stop-app --port=8081

Я считаю, что эта функция была нарушена в 3.0.3 и более ранних версиях, но она определенно работает в 3.0.4.

Принятый ответ правильный. Для получения дополнительной информации Grails 3 использует spring-boot, а свойства сервера настраиваются

org.springframework.boot.autoconfigure.web.ServerProperties

учебный класс. "port" - это просто свойство этого класса, которое заполняется из application.yml префиксом "server". Поэтому в дополнение к порту вы можете установить свойства этого класса, включая свойства конфигурации tomcat и т. Д. Чтобы изменить contextPath, например, добавьте

server: 
   contextPath: /myapp

вам application.yml.

  server:
  port: 9809
  contextPath: '/admin/'

Вы можете использовать это в своем файле application.yml

или изменение порта зависит от среды, например:

    environments:
        test:
            grails:
                serverURL: "http://localhost:9809"
Другие вопросы по тегам