我在grails项目中使用石英插件进行cron调度。 在我的应用程序中,用户提供了一个脚本和cron配置,我使用quartz设置为cron。
但是当我重新启动服务器时,这些cron作业无法启动。 我是否必须再次手动创建这些cron作业,或者有一种方法可以自动存储和重新启动它们。
这是我的Quartz Job
class RscriptJob {
def execute() {
println "hello"
}
}
这是控制器,它通过视图接收来自用户的请求以设置cron
class UploadsController {
def upload() {
def cron=params.cronString
RscriptJob.schedule(cron)
}
}
预定了cron。现在,当我重新启动服务器时,cron没有启动。 我在cdb中存储cron信息,可以在启动时再次使用它来设置cron。
但我想知道石英是否具有支持它的内置功能。</ p>
答案 0 :(得分:1)
我认为您可以从启动时执行的bootstrap.groovy触发DailyJob,这里是安排工作的地方
class BootStrap {
def init = { servletContext ->
def cronExpression = "*/10 * * * * ?"
DailyJob.schedule(cronExpression)
}
}