开发者社区> 问答> 正文

Quartz cron表达式 60分钟以上写法问题?报错

最近项目用到Quartz,由于任务比较个性化,采用了 CronExpression 表达式来定义

但是Cron表达式里面的分钟范围为 0-59

如:我想要 2015年9月8号至9号  8点至19点   每隔80分钟触发一次

1、  0 0/80 8-19 08-09 09-09 ? 2015-2015    每次都在整点运行,就是80实际上为60分钟。

2、  0 */80 8-19 08-09 09-09 ? 2015-2015    直接报错,表达式不合法。

请问有什么办法能解决这个问题么?

展开
收起
爱吃鱼的程序员 2020-06-12 14:01:18 2360 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    每隔80分钟不就是每隔1小时20分钟?回复<aclass='referer'target='_blank'>@Marshmallow:这个表达式还是行不通,跑起来还是每隔20分钟执行一次。嗯?多谢啊我上到测试测一晚明天再答谢哈!回复<aclass='referer'target='_blank'>@a_day:00/208-19/108-0909-09?2015-2015这样不行?嗯嗯是的是这个意思呢。

    <spanstyle="font-family:'MicrosoftYaHei';font-size:16px;color:#009900;">使用CRON表达式,无法构造超过59分钟的间隔,因为60分钟将更改整点。类似地,对于重现任务,无法指定70分钟或74分钟。变通方法是使用交错的开始时间为同一对象指定两个计划安排。

    <spanstyle="font-size:14px;">例如,假定您希望指定流程图的运行之间的间隔为90分钟。您可按如下方式设置两个重现计划安排。

    • 计划安排A
      • 开始时间:上午7点
      • 间隔:3小时

      此计划安排使流程图在上午7点、上午10点等依此类推的时间运行。

    • 计划安排B
      • 开始时间:上午8:30
      • 间隔:3小时

      此计划安排使流程图在上午8.30、上午11.30等依此类推的时间运行。

    <spanstyle="line-height:1.5;font-family:Arial,Helvetica,sans-serif,Verdana,Geneva;font-size:12.8px;color:#E53333;background-color:#FFFFFF;">以上答案是Google出来的,希望给大家一个借鉴。

    2020-06-12 14:01:35
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载