CronExpression每2天

时间:2017-10-09 10:06:09

标签: cron quartz-scheduler quartz

我知道之前曾问过这个问题。但是我认为这些问题的答案并不正确。

我希望每隔2天安排一次(Quartz)的CronExpression。 CronExpression"应该是" 0 0 0 1/2 * ? *

但是:从今天开始(2017年10月9日)CronMaker表明这不是真的。这个表达基本上意味着:从每个月的第一天开始每2天安排一次。这意味着:从2017年10月9日开始,下一次是:

2017年10月11日星期三中午12:00 2017年10月13日星期五中午12:00 2017年10月15日星期日中午12:00 2017年10月17日星期二中午12:00 2017年10月19日星期四中午12:00 2017年10月21日星期六12:00 AM 2017年10月23日星期一中午12:00 2017年10月25日星期三中午12:00 2017年10月27日星期五中午12:00 2017年10月29日星期日中午12:00 2017年10月31日星期二12:00 AM
2017年11月1日星期三中午12:00

如您所见:最后两次之间只有1天。

因此,当我使用freeformatter来描述它所说的cronexpression时:

  

凌晨00:00:00,每隔2天从1月开始,每月

上面列出的时间显示了这一点。但是我需要每2天正确点火的东西。

2017年10月31日星期二12:00 AM
2017年11月2日星期四12:00 AM

等等。

显然石英的简单触发器对我来说不是一个真正的选择!

1 个答案:

答案 0 :(得分:1)

因为你误解了cron表达式是如何工作的。每个月它将从每月的第一天开始。如果它可以在其他方面起作用,那么下个月将不适合表达的1/2部分。

有关详细说明,请查看此处:

Quartz.net - Repeat on day n, of every m months?