(本文档仅供参考)

问题描述:

在计划中,可以自己写CRON表达式实现定时发送的效果,但有时候网上【百度】找到的cron表达式生成器生成的cron表达式,应用到计划设置界面,却发现没有效果;

例如,想每周的 周一 、周三、周五 的早上7点30 执行,网上cron表达式生成的是: 30 7 * * 1,3,5 * 设置后一直报错不合规定,需改成使用:0 30 7 ? * MON,WED,FRI 才行,此现象是什么原因导致的呢?

原因说明:

cron表达式分不同标准格式,例如分为Unix/Linux cron 和Quartz Scheduler的格式,像30 7 * * 1,3,5 * 对应的就是Unix/Linux cron 格式,然后 0 30 7 ? * MON,WED,FRI 对应的是Quartz Scheduler 格式的,而我们计划调度使用的是 Quartz Scheduler 的格式,

因此就会出现都是网上找的生成器对应生成的格式,有的适用有的报错的现象,后续若需自定义定义时,可留意搜索使用Quartz Scheduler格式的相关表达式。