我正在使用Java EE应用程序服务器(GlassFish)的计时器服务,我想安排一个每n个月执行一次的任务(例如每2个月执行一次)。我试过用:
scheduleExpression.month(*/2)
。但我得到了这个例外:
月份值无效:* / 2
答案 0 :(得分:1)
根据规范:间隔可以设置仅为秒,分钟和小时属性。
但你可以使用:
@Schedule(month="2,4,6,8,10,12")
在第2个月(2月),4月(4月)等处运行你的任务......
否则就有例如
@Schedule(dayOfMonth="1")
将在每个月的第一天执行任务。
答案 1 :(得分:0)
我认为我必须强制用户输入这些值(1,2,3,4,6,12)来解决问题。因此,我们可以确定执行任务的月份列表。