首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Grails:如何从命令行脚本访问应用程序配置?

Grails:如何从命令行脚本访问应用程序配置?
EN

Stack Overflow用户
提问于 2011-08-14 14:57:10
回答 3查看 1.8K关注 0票数 1

我的grails应用程序中需要一个自定义命令行任务,因此我使用grails create-script my-script创建了一个脚本。

通过该脚本,我想访问应用程序的一些配置属性。通常情况下,您可以通过grailsApplication.config完成此操作。但是,在命令行脚本的上下文中似乎不能使用grailsApplication。下面的脚本....

代码语言:javascript
运行
复制
includeTargets << grailsScript("Init")

target(main: "The description of the script goes here!") {
    println  grailsApplication.config.mysetting
}

setDefaultTarget(main)

...yields (以grails my-script身份运行时):

代码语言:javascript
运行
复制
groovy.lang.MissingPropertyException: No such property:
                                      grailsApplication for class: MyScript

我还尝试了ConfigurationHolder.config,它只返回null。

那么,如何从命令行启动的脚本访问应用程序配置呢?

EN

Stack Overflow用户

回答已采纳

发布于 2011-08-14 15:26:46

诀窍是引入引导目标并依赖它们,如下所示。请注意,在此阶段,应用程序上下文对象称为grailsApp,,而不是grailsApplication

代码语言:javascript
运行
复制
includeTargets << grailsScript('_GrailsBootstrap')

target(main: "The description of the script goes here!") {
    depends checkVersion, configureProxy, bootstrap
    println  grailsApp.config.mysetting
}

setDefaultTarget(main)

您也可以使用run-script命令。这对我不起作用,因为它试图初始化一个Hibernate会话。我的应用程序使用mongodb作为主数据存储,requires that you uninstall the Hibernate plugin - so run-script会失败。

票数 3
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7055500

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档