从插件访问'grailsApplication'

时间:2014-01-13 13:49:09

标签: grails groovy

如何从插件访问主应用程序的“grailsApplication”?

示例情况: 我在插件中有一个类,它需要从主应用程序获取资源链接,通常通过“grailsApplication”检索。我该怎么做?

在插件类中,您可以简单地指定:

import grails.util.Holders
Holders.getGrailsApplication()

1 个答案:

答案 0 :(得分:6)

在服务中,您应该能够添加

def grailsApplication

它将被注入您的服务。

如果你的班级是一个春天的豆子,那么你应该能够把它注入

def doWithSpring = { ->
    myBean( org.whatever.BeanClass ) {
        grailsApplication = ref( 'grailsApplication' )
    }
}

插件主要groovy文件的块。

如果不是这些,您是否尝试过使用Holders类?

def grailsApplication = grails.util.Holders.getGrailsApplication()