Quartz的JobDetail没有触发器指向时会被删除的问题
之前项目里使用的是老版本的Quartz,才1.6.5。发现一个问题,如果我触发器配置的时间已经过了,想去手动触发一个任务,就会报找不到这个任务的异常,通过debug可以发现,Scheduler里添加jobDetail后,是有这个job的,但添加一个过期并指向这个jobDetail的Trigger后就会发现找不到这个job,没去看代码,但可以推断,肯定是添加触发器发现过期后,会做一个判断如果没有触发器指向一个job,那么就会删除这个job。本来我想改源代码的,但有怕部署的时候别人用网上下载的原始代码,还是不改得好。
然后就下了最新版的2.2.1解决了这个问题,在用JobBuilder创建JobDetail的时候,有一个storeDurably()方法,可以在没有触发器指向任务的时候,将任务保存在队列中了。然后就能手动触发了。
另外触发器的状态是个枚举Trigger.State,可以用来判断触发器是否暂停。
如要要循环触发器启动的时候不开始任务,可以在 CronScheduleBuilder里调用withMisfireHandlingInstructionDoNothing()方法
Quartz的JobDetail没有触发器指向时会被删除的问题的更多相关文章
- (转)Java任务调度框架Quartz入门教程指南(四)Quartz任务调度框架之触发器精讲SimpleTrigger和CronTrigger、最详细的Cron表达式范例
		
http://blog.csdn.net/zixiao217/article/details/53075009 Quartz的主要接口类是Schedule.Job.Trigger,而触发器Trigge ...
 - Quartz 2.2 动态添加、修改和删除定时任务
		
QuartzManager.Java 动态添加.修改和删除定时任务管理类 import org.quartz.CronScheduleBuilder; import org.quartz.CronTr ...
 - Quartz 2.3 动态添加、修改和删除定时任务
		
下面直接上代码: <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>qu ...
 - mysql 触发器的创建  修改  删除
		
//做一个简单的练习,创建一个简单的触发器 完成添加文章的时候,自动加上时间,默认作者 为 ‘日记本的回忆‘ show columns from test; //查看表结构 //查看已存在触发器 sh ...
 - 在FreeSQL中实现「触发器」和软删除功能
		
前言 最近做新项目,技术栈 AspNetCore + FreeSQL 这个ORM真的好用,文档也很完善,这里记录一下两个有关「触发器」的功能实现 修改实体时记录更新时间 模型代码 我的模型都是基于这个 ...
 - SQL Server 触发器的修改与删除
		
修改: alter trigger trigger_name on ..... as ..... #把create 修成 alter 就可以了. 删除: drop trigger trigger ...
 - Java 基于quartz实现定时 之二(XML方式配置)
		
<!-- 在spring核心配置文件中进行如下配置 --> <!-- Spring基于quartz定时任务 --> <bean id="triggerByBea ...
 - Quartz.Net进阶之一:初识Job作业和触发器
		
前几天写了一篇有关Quartz.Net入门的文章,大家感觉不过瘾,想让我在写一些比较深入的文章.其实这个东西,我也是刚入门,我也想继续深入了解一下,所以就努力看了一些资料,然后自己再整理和翻译 ...
 - Quartz.Net - Lesson2: 任务和触发器
		
Lesson 2: 任务和触发器 本系列文章是官方3.x文档的翻译,原文地址:https://www.quartz-scheduler.net/documentation/quartz-3.x/tut ...
 
随机推荐
- sql server:Monty Hall problem (蒙提霍尔问题)
			
--------------------------------------------------------------------- -- Auxiliry Table of Numbers 数 ...
 - 对比学IT---路由器和linux流量统计的差别
			
1. 路由器使用MQC来统计端口入出方向,特定特征的数据流. 显示policy 的统计信息 配置policy: #traffic classifier vlan5traffic operator an ...
 - 使用Twitter异常检测框架遇到的坑
			
在Github上搜索“Anomaly Detection”,Twitter的异常检测框架(基于R语言)高居榜首,可见效果应该不错: 但是活跃度并不高,3-4年没人维护了: 因此在使用时难免会遇到一些坑 ...
 - 【转】解决configure: error: C++ compiler cannot create executables问题
			
转自:http://www.coderbolg.com/content/83.html 啊……天啊,./configure时报错:configure: error: C++ compiler cann ...
 - Android解析XML文件
			
XML文件和获取XML值 XML文件样例 <?xml version="1.0" encoding="utf-8"?> <citys> ...
 - Java强引用、软引用、弱引用及虚引用深入探讨
			
强引用.软引用.弱引用和虚引用深入探讨 为了更灵活的控制对象的生命周期,在JDK1.2之后,引用被划分为强引用.软引用.弱引用.虚引用四种类型,每种类型有不同的生命周期,它们不同的地方就在于垃圾回收器 ...
 - 一文学redis操作(记录向)
			
相关内容: 虽然有参考文档,而且记忆太多也是耗脑,但学习的时候还是想要有个系统划分开知识点的文档,即使不要求去细致记忆,但划分开知识块后脑子里的印象才会更清晰,所以就有了这个博文. 主要是将各种命令进 ...
 - 使用spark DStream的foreachRDD时要注意哪些坑?
			
答案: 两个坑, 性能坑和线程坑 DStream是抽象类,它把连续的数据流拆成很多的小RDD数据块, 这叫做“微批次”, spark的流式处理, 都是“微批次处理”. DStream内部实现上有批次处 ...
 - [20171031]markhot.txt
			
[20171031]markhot.txt --//昨天看了https://jonathanlewis.wordpress.com/2017/10/02/markhot/,测试看看这样时候可以减少争用 ...
 - linux系统运行状态检查
			
目录 1 CPU状态检查 1.1 运行时间 1.2 CPU占用率 1.3 单核占用率 2 内存状态检查 2.1 内存占用率 2.2 交换分区占用率 3 磁盘状态检查 3.1 系统磁盘容量占用率 3.2 ...