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

В Grails3 grails -Dserver.port=9001 run-app не работает:

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

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


person Neill Robbins    schedule 09.02.2015    source источник


Ответы (4)


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

server:
  port: 9001

in application.yml.

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

person dmahapatro    schedule 09.02.2015

grails run-app --port=8081

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

run-app --port=8081

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

stop-app --port=8081

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

person and    schedule 31.07.2015

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

org.springframework.boot.autoconfigure.web.ServerProperties

класс. «порт» — это просто свойство этого класса, которое заполняется из application.yml с префиксом «сервер». Таким образом, в дополнение к порту вы можете установить свойства этого класса, включая свойства конфигурации tomcat и т. д. Например, чтобы изменить contextPath, вы добавляете

server: 
   contextPath: /myapp

вам application.yml.

person Cagatay Kalan    schedule 09.04.2015

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

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

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

    environments:
        test:
            grails:
                serverURL: "http://localhost:9809"
person rihabe berrich    schedule 04.02.2018