在我的grials应用程序中,我有一个正在运行的作业,这会触发其定义:
static triggers = {
simple name: 'myJob', startDelay: 1000, repeatInterval: 36000000
}
我想更改它,使该值不会被硬编码,但应从congif / properties文件中获取它们。
我尝试了这个:
Config.groovy:
myJob {
simpleName = 'myJob'
startDelay = '1000'
repeatInterval = '36000000'
}
并在工作触发器中:
static triggers = {
simple name: grailsApplication.config.myJob.name, startDelay: grailsApplication.config.myJob.startDelay, repeatInterval: grailsApplication.config.myJob.repeatInterval
}
但是随后我收到一条消息:无法从静态上下文引用非静态符号'grailsApplication'。
有谁有一个更好的主意怎么做?
谢谢。
最佳答案
我也发现了这个问题,我通常要做的是将属性存储在.properties文件中,从Quartz作业中删除触发器,然后在Bootstrap.groovy中手动引导这些作业,以从属性文件中获取值。
检查以下内容:Quartz Plugin Documentation以查看如何触发作业
关于grails - Grails-从配置文件获取作业触发值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16643605/