如何使用外部服务作为Grails应用程序配置的源?
Grails文档的一部分说,可以从外部源配置Grails应用程序:如何使用外部服务作为Grails应用程序配置的源?,grails,configuration,groovy,Grails,Configuration,Groovy,Grails文档的一部分说,可以从外部源配置Grails应用程序: grails.config.locations = [ "classpath:${appName}-config.properties", "classpath:${appName}-config.groovy", "file:${userHome}/.grails/${appName}-config.properties", "file:${userHome}/.grails/${appName
grails.config.locations = [
"classpath:${appName}-config.properties",
"classpath:${appName}-config.groovy",
"file:${userHome}/.grails/${appName}-config.properties",
"file:${userHome}/.grails/${appName}-config.groovy" ]
此外,还可以通过指定配置脚本类来加载配置:
grails.config.locations = [com.my.app.MyConfig]
我的问题是:
回答第二个问题:您可以在BootStrap.groovy init closure中这样做,因为它基本上允许您执行任何代码:
// Inject grails app
def grailsApplication
def init = { servletContext ->
def externalValue = getItUsingRest(someUrl)
grailsApplication.config.my.custom.var = externalValue
}
根据您使用的grails版本,您可能需要使用
org.codehaus.groovy.grails.commons.ConfigurationHolde.config
您的应用程序配置实际上可以是一个Groovy脚本。因此,任何看起来像Config.groovy的类都可以充当配置类。在我们的项目中,我们倾向于将配置保持在grails应用程序之外,这样就可以在不重新编译所有内容的情况下配置应用程序 也许会给你一个关于如何使用和加载外部配置文件的提示