Dans Grails3 grails -Dserver.port=9001 run-app
ne semble pas fonctionner:
Je "reçois l'adresse déjà liée 8080".
Une idée comment faire cela - idéalement en passant une propriété à "gradle run"?
Vous pouvez utiliser
server:
port: 9001
dans application.yml
.
Ou vous pouvez le transmettre via l'environnement système. (par exemple. SERVER_PORT=9001 grails run-app
).
grails run-app --port=8081
Ou en mode interactif:
run-app --port=8081
N'oubliez pas d'utiliser le même port lorsque vous souhaitez arrêter le serveur:
stop-app --port=8081
Je crois que cette fonctionnalité a été cassée dans les versions 3.0.3 et antérieures, mais elle fonctionne certainement dans 3.0.4.
La réponse acceptée est correcte. Pour quelques informations supplémentaires, Grails 3 utilise Spring-Boot et les propriétés du serveur sont configurées par le
org.springframework.boot.autoconfigure.web.ServerProperties
classe. "port" n'est qu'une propriété de cette classe qui est remplie à partir du fichier application.yml avec le préfixe "server". Ainsi, en plus du port, vous pouvez définir les propriétés de cette classe, y compris les propriétés de configuration Tomcat, etc. Pour modifier le contextPath par exemple, vous ajoutez
server:
contextPath: /myapp
à vous application.yml.
server:
port: 9809
contextPath: '/admin/'
vous pouvez l'utiliser dans votre fichier application.yml
ou changer le port dépend de l'environnement par exemple:
environments:
test:
grails:
serverURL: "http://localhost:9809"