根据环境配置,似乎只有 grails.serverURL 和 grails.path 被识别。 bla 和 foo 被忽略,无法在应用程序中使用 任何人都可以解决这个问题并提供一种为每个环境配置 bla 和 foo 的方法吗?
environments {
production {
grails.serverURL = "http://alpha.foo.de"
grails.path = ""
bla = "text"
foo= "word"
}
test {
grails.serverURL = "http://test.foo.de"
grails.path = ""
bla = "othertext"
foo= "otherword"
}
}
最佳答案
从 Grails 3.0 开始,Groovy 或 YAML 语法都可以使用。新的主应用程序配置文件是 /conf/application.yml
但您可以继续使用现有的 groovy 配置定义 /conf/application.groovy
文件。
这是每个环境的数据源定义示例(在 YAML 中):
environments:
development:
dataSource:
dbCreate: create-drop
url: jdbc:h2:mem:devDb
test:
dataSource:
dbCreate: update
url: jdbc:h2:mem:testDb
production:
dataSource:
dbCreate: update
url: jdbc:h2:prodDb
myenv:
dataSource:
dbCreate: update
url: jdbc:h2:myenvDb
要在特定环境中运行 grails 命令,您可以使用:
grails [environment] [command name]
要针对不同于开发、测试和生产的环境,您可以使用:
grails -Dgrails.env=myenv run-app
请参阅grails environment documentation或this example application了解更多信息。
关于grails - 如何在 grails 中扩展每个环境的配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2868284/