Spring动态定时任务异常Cron expression must consist of 6 fields

2024-01-03 17:30:55

spring-context-5.3.24版本源码实例化CronTrigger 时判断了cron表达式长度必须是6,spring 4.x中已经不支持7个参数的cronin表达式了

解决方案:

(1)使用别的定时框架

(2)如果涉及很多业务代码,而且使用的地方比较多而且定时任务的时间都有年份的话,可以尝试通过增加业务条件限制,比如将非本年的定时任务都过滤掉,这样就可以用6位表达式了。

注意:第二个解决方案也有缺点就是需要另外单独的一个定时任务在每年1月1号凌晨执行将本年需要执行的任务加载进来或者需要每年1月1号凌晨重启一次服务加载本年要执行的任务。

eg:定时任务列表中有:

2024-08-13 10:16:54&17&0
2024-08-15 10:20:26&18&0
2025-08-02 17:30:29&37&0
2053-08-31 12:06:31&8&0
2099-08-28 12:14:50&1&0

文章来源:https://blog.csdn.net/qq_41950069/article/details/135360351
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。