具有多个@Schedule 注释的方法不选择第二行

Method with multiple @Schedule annotations does not pick second line

我在 Glassfish 服务器 v 3.1.2 上有无状态 bean,有两个方法应该按计划执行。 一个方法每周执行一次,注释如下:

@Schedule(dayOfWeek = "Sun", hour = "1", minute = "5", second = "0")

第二个每 15 分钟运行一次,第一个方法运行和注释的时间除外

@Schedules({
    @Schedule(dayOfWeek = "Mon-Sat", hour = "*", minute = "*/15", second = "0", persistent = false),
    @Schedule(dayOfWeek = "Sun", hour = "0,2-23", minute = "*/15", second = "0", persistent = false)
})

问题是第二种方法从星期六 23:45 到星期日 00:00 每秒运行一次,然后正常地每 15 分钟恢复一次执行。这表明,周日的日程安排有问题,但不知道出了什么问题。 @Schedules Javadoc 指出此注释可从 Java 6.

欢迎提出任何想法。

由于没有收到回复,通过试验找到了解决方案。解决方案是重写 @Schedules 注释,如下所示。

@Schedules({ @Schedule(dayOfWeek="Mon,Tue,Wed,Thu,Fri,Sat", hour="*", minute="*/15", second="0", persistent=false), @Schedule(dayOfWeek="Sun", hour="0,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23", minute="*/15", second="0", persistent=false) })