Quartz 确定作业是否成功的唯一因素是作业的 Execute() 方法是否在未引发 JobExecutionException 的情况下完成?
这是我一直在努力的假设;因此,如果我将一个监听器连接到我的工作并且 JobWasExecuted(...) 中的 jobException 参数 == null ,那么我假设 Quartz 认为该工作是成功的。
我之所以问,是因为我看到其他人从 JobWasExecuted(...) 中检查 TriggerState,如果它是 TriggerState.COMPLETE,他们似乎认为这项工作是成功的。但这只是检查触发器本身的状态,而不是检查工作,对吗?如果是这种情况,COMPLETE 的 TriggerState 是否仅仅意味着触发器已触发?
所以我要确认两件事:
- 在作业的 Execute 方法中缺少抛出的 JobExecutionException(因此在侦听器中为 null)意味着(对于 Quartz)作业成功完成
和
- TriggerState 不是作业完成成功的指标