为何spring quartz 定点不执行,但每隔一段时间可以执行

为何spring quartz 定点不执行,但每隔一段时间可以执行

问题描述:

cronExpression如果配成“0 0 11 * * ?”,11点的时候没执行;
但配成“0 0/1 * * * ?”,每隔一分钟是执行的,请问一下是怎么回事?

楼主的时区设置有问题
jvm启动参数加上这个
-Duser.timezone=GMT+08

表达式写错了吧。
Cron表达式是一个字符串,字符串以5或6个空格隔开,分开工6或7个域,每一个域代表一个含义,Cron有如下两种语法
格式:
Seconds Minutes Hours DayofMonth Month DayofWeek Year 或
Seconds Minutes Hours DayofMonth Month DayofWeek
每一个域可出现的字符如下:
代码
Seconds:可出现,- * / 四个字符,有效范围为0-59的整数

Minutes:可出现,- * / 四个字符,有效范围为0-59的整数

Hours:可出现,- * / 四个字符,有效范围为0-23的整数

DayofMonth:可出现,- * / ? L W C八个字符,有效范围为0-31的整数

Month:可出现,- * / 四个字符,有效范围为1-12的整数或JAN-DEc

DayofWeek:可出现,- * / ? L C #四个字符,有效范围为1-7的整数或SUN-SAT两个范围。1表示星期天,2表示星期一, 依次类推

Year:可出现,- * / 四个字符,有效范围为1970-2099年

你的表达式改成这样试试,[code="java"]0 0 11 0 * ? *[/code]
参考资料:[url]http://haiziwoainixx.iteye.com/blog/1179071[/url]

看起来写的是对的,你可以这样测试,schedule以后,用Scheduler的方法getTrigger,然后再Trigger.getNextFireTime, 看看返回的下一次触发事件对不对;对的话表达式就没问题,就需要找别的问题。

LZ,你的需求是每天11点运行一次吧?

试一下这个表达式“0 0 11 * * ? *”

楼主你确定你是把机器系统时间跳到11点之前(比如10:59),等着看他11点的时候是否执行了的,是吗?

cron="0 0 11 * * ?" 试试这个。

应该是你配置问题,你隔段时间执行说明程序没问题的,你可以看下corn表达式研究下。