我正在尝试在集群环境中执行以下石英调度程序代码。
scheduler.unscheduleJob("genericJobTrigger", "DEFAULT");
其中为
Scheduler scheduler = (Scheduler) context.getBean("scheduler");
JobDetail genericJob = (JobDetail) context.getBean("genericJob");
CronTrigger genericJobTrigger = (CronTrigger) context.getBean("genericJobTrigger");
以上代码是从触发器和作业详细信息中删除条目。它应该只删除触发器吗?
为什么Quartz调度程序的unscheduleJob同时删除触发器和作业详细信息?
将持久性设置为“作业”,以避免在删除触发器时删除作业。
无论何时创建JobDetail
的对象然后设置storeDurably()
,请参考以下示例:
return JobBuilder.newJob(ScheduledJob.class)
.setJobData(jobDataMap)
.withDescription("job executes at specified frequency")
.withIdentity(UUID.randomUUID().toString(), "email-jobs")
.storeDurably() //This will not allow to delete automatially
.build();
还可以通过检查IS_DURABLE
表中的jobDetails
列的值来验证它。