Quartz:将cron表达式设置为在月的第1天和最后一天运行

时间:2016-02-25 11:20:31

标签: java quartz-scheduler

Quartz文档提供了在每个月的最后一天运行cron作业的示例,如下所示:

0 15 10 L * ?   

每个月的最后一天上午10:15开火

但是,我想在本月的第一天和最后一天运行一个cron工作。 我希望cron看起来像这样:

0 15 10 1,L * ?

但是石英无法使用这种语法。

我无法在tutorial中找到任何正确/类似的例子。有什么建议吗?

1 个答案:

答案 0 :(得分:2)

所以经过一些挖掘石英代码后我发现了这个:

// throw an exception if L is used with other days of the month
if(exprOn == DAY_OF_MONTH && expr.indexOf('L') != -1 && expr.length() > 1 && expr.contains(",")) {
    throw new ParseException("Support for specifying 'L' and 'LW' with other days of the month is not implemented", -1);
}

org.quartz.CronExpression(quartz 2.2.2)。

本月的其他日子似乎不支持“L”。太糟糕了,它们的文档中没有任何地方:(