我有一份工作要在本月的最后一个周末运行(即)如果月末有一个星期日它应该在星期日运行,如果月末结束或者星期六结束时工作应该运行周六。 我没有找到任何文档来为这种情况构建一个cron表达式。
提前致谢。
答案 0 :(得分:0)
您可以在星期几字段中使用L
0 0 0 ? * SUNL
每个月的每个SUN都会触发,例如
Sunday, August 31, 2014 12:00 AM
Sunday, September 28, 2014 12:00 AM
Sunday, October 26, 2014 12:00 AM
Sunday, November 30, 2014 12:00 AM
Sunday, December 28, 2014 12:00 AM
我没有看到指定一个月的最后一个周末的方法,因为石英不允许将L
字符与一周中的几天组合。因此,您无法执行SATL,SUNL
之类的操作。如果你想在每个SAT和SUN上触发一些东西,我会定义2个cron表达式。
来自quartz documentation(特殊字符)
L ("last") - .....
for example "6L" means "the last friday of the month".
我用我的cron表达式视图测试了它 - 我为eclipse编写的插件 https://github.com/link-intersystems/eclipse-plugins-repository。也许它对你有用,