Java quartz 调度程序:将 unix cron 格式转换为 quartz cron 格式

Java quartz scheduler: convert unix cron format to quartz cron format

我想检查给定的 DateTime 是否与 unix cron 格式匹配。我试图使用 Quartz,但 Quartz 不支持 "Day of Month" 和 "Day of Week" 都是“*”。

例如:

0 * * * * * (which means run every minutes) is not supported in Quartz

因为一定是

0 * * * * ? or 0 * * ? * *. 

谁能告诉我原因以及如何将给定的 DateTime 匹配到 Unix cron 格式?

谢谢

为什么 cron 语法不同不是我可以回答的问题,但如果您要寻找的只是一种从 unix 语法转换为 quartz 语法的方法,https://github.com/jmrozanec/cron-utils 过去曾帮助过我。

据我所知,将给定的日期时间与 cron 语法匹配并不是一项简单的任务,因为 cron 意味着一定的重复频率,而 date/time 是一个时刻。

如果您尝试安排一个作业执行一次,我建议您使用一个简单的触发器。

如果您真的想要一个按计划执行的 cron 作业,上面的 cron-utils 库与 cron 触发器相结合应该可以解决问题。

可以在此处找到两个触发器(以及更多)的实现: http://www.quartz-scheduler.org/api/2.2.1/index.html