SpringBoot整合quartz框架启动定时任务报错:the given trigger will never fire.
org.quartz.SchedulerException: Based on configured schedule, the given trigger 'DEFAULT.cron_b1a91e1b-3285-430e-86c9-72e11d19e14f' will never fire.
这个报错可能是由于设置的任务时间不合法,或者是设置的时间是过去的时间,导致这个任务永远不会被启动,所以报错了
/**
* 判断当前cron表达式是否是未来时间/合法
* @param cronStr cron表达式
* @return 是:true 否:false
*/
public static boolean checkCron(String cronStr) {
try {
CronExpression cron = new CronExpression(cronStr);
Date nextValidTimeAfter = cron.getNextValidTimeAfter(new Date());
if (nextValidTimeAfter == null) {
//没有找到下一个合法时间
return false;
}
boolean isCronGreaterThanCurrentTime = nextValidTimeAfter.after(new Date());
if (isCronGreaterThanCurrentTime) {
return true;
} else {
return false;
}
} catch (ParseException e) {
log.error("cron表达式错误:", e);
}
return false;
}
SpringBoot整合quartz实现动态启动,停止定时任务功能 参考:https://www.cnblogs.com/pxblog/p/13396085.html
-----------------------有任何问题可以在评论区评论,也可以私信我,我看到的话会进行回复,欢迎大家指教------------------------
(蓝奏云官网有些地址失效了,需要把请求地址lanzous改成lanzoux才可以)