从Quartz Job访问config.groovy变量

时间:2014-12-16 15:39:41

标签: grails configuration-files

我正试图访问grails-app/conf/Config.groovy Quartz Job中的变量。这是我试图在下面的石英工作中访问的变量:

ais.mediquery.TrialVariable="My Variable";

Quartz Job:

import com.projectname.*;

import org.codehaus.groovy.grails.commons.GrailsApplication;

import grails.util.Holders
class TrialJob {

    GrailsApplication grailsApplication;

    static triggers = {

      simple repeatInterval: 10000l // execute job once in 5 seconds

    }

    def execute() {
        //log.info(grailsApplication.ais.mediquery.TrialVariable)
        println (Holders.config.ais.mediquery.TrialVariable)
    }
}

我尝试过使用GrailsApplication和ais.mediquery.TrialVariable 但他们似乎都没有访问变量并打印它们

1 个答案:

答案 0 :(得分:0)

配置绝对可以从GrailsApplication获得,这是最好的选择:

println grailsApplication.config.ais.mediquery.TrialVariable

如果这似乎不起作用,请尝试打印整个配置,看看是否有拼写错误:

println grailsApplication.config

println grailsApplication.config.flatten()

与任何看似奇怪的行为一样,运行grails cleangrails compile以强制进行干净的编译。