【问题标题】:Cron expression 0 0/30 * 1/1 * ? * not working for half n hourCron 表达式 0 0/30 * 1/1 * ? * 半小时不工作
【发布时间】:2017-07-24 11:07:04
【问题描述】:

我有一个调度程序作业,我已将 0 0/30 * 1/1 * ? * 配置为每半 n 小时运行一次的 cron 表达式,但调度程序没有被触发,相反,如果我将表达式设置为每 5 分钟一次,它可以正常工作,如 @ 987654324@。这里可能是什么问题?我的 cron 表达式正确吗?

注意:我正在使用Quartz Scheduler(在 Java 中)并在数据库调度程序表中创建一个条目。

【问题讨论】:

  • 您是否在 *:00, *:30 时间检查过您的表达式的调用?顺便说一句,你可以检查或生成你的表达式here
  • 你可以试试 0,30 代替 0/30 吗?
  • 嗨 mexes_S,我确实从 cronmaker 做了一个 cron 表达式。它给了我 0 '0/30 * 1/1 * ? '。是 ':00, *:30' cron 表达式吗?抱歉,我是 cron 新手
  • 嗨 Radu,0/0,30 应该是这样吗?
  • 不,他的意思是0 0,30 * 1/1 * ? *,而不是0 0/30 * 1/1 * ? *

标签: java cron quartz-scheduler


【解决方案1】:

我不明白“1/1”的日期。但是如果你想让一个 cron 表达式每半 n 小时运行一次:正确的 cron 表达式是 "0 0/30 * ? * * *"

在 Java 中,您可以使用单元测试来测试您的 cron 表达式。 org.quartz.CronExpression 有一个方法来测试下一个有效日期。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-16
    • 2016-01-03
    • 1970-01-01
    • 2017-11-28
    • 2012-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多