这是我尝试访问的grails-app/conf/Config.groovy
Quartz Job中的变量。这是我在下面的 quartz 作业中尝试访问的变量:
ais.mediquery.TrialVariable="My Variable";
quartz 作业:
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
但它们似乎都不访问变量并打印出来
最佳答案
绝对可以从GrailsApplication
获得该配置,这是最好的选择:
println grailsApplication.config.ais.mediquery.TrialVariable
如果这似乎不起作用,请尝试打印整个配置,看看是否有错字:
println grailsApplication.config
要么
println grailsApplication.config.flatten()
与任何看起来很奇怪的行为一样,运行
grails clean
和grails compile
强制执行干净的编译。
关于grails - 从Quartz Job访问config.groovy变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27508275/