grails - 从Quartz Job访问config.groovy变量

标签 grails configuration-files

这是我尝试访问的grails-app/conf/Config.groovyQuartz 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 cleangrails compile强制执行干净的编译。

关于grails - 从Quartz Job访问config.groovy变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27508275/

相关文章:

android - Grails模板

java - 从字节数组创建图像,通过后端作业将其添加到 PDF 和电子邮件中

python - 在外部文件中存储字典、正则表达式和变量的最佳方式?

macos - Pylint 中的永久配置文件

mysql - OS X Yosemite 上 MySQL Server 的配置文件在哪里?

grails - 简单的常规运算符问题 : Math. min(params.max ? params.int ('max' ) : 10, 100)

session - 单击注销后如何从所有事件 session 中注销?

grails - 如何从 grails 过滤器中去除通用逻辑?

.net - .NET 中的自定义配置

java - 我应该将我的 XML bean 放在 Spring Boot 应用程序中的什么位置?