2013-02-14 69 views
0

我正在使用Java EE應用程序服務器(GlassFish)的計時器服務,並且我想安排每n個月(例如每2個月)執行一次任務。我試過使用: scheduleExpression.month(*/2)。但是,我得到這個異常:使用計時器服務每n個月安排一次任務

無效月值:*/2

+1

你在調度中使用什麼?視窗?的Unix/Linux呢?還有別的嗎? – SeanC 2013-02-14 15:10:53

+0

對不起!我正在使用JEE應用服務器(Glassfish)的計時器服務 – Zava 2013-02-14 15:15:09

回答

0

我認爲我必須強制用戶輸入這些值(1,2,3,4,6,12)來解決問題。因此,我們可以確定任務執行的月份列表。

1

根據規範:間隔可設置爲秒,分鐘和小時屬性。

但是你可以使用:

@Schedule(month="2,4,6,8,10,12") 

在2月(二月),4(4月)運行的任務等等......

否則有例如

@Schedule(dayOfMonth="1") 

哪個會在每個月的第一天運行任務。

+0

謝謝你的回答。 我想過這個,但是如果我們選擇每5個月安排一次任務,例如?因此,上述解決方案是不正確的。 – Zava 2013-02-14 16:05:13

+0

任務可以從檢查哪個月開始,如果不是正確的月份,則不做任何工作就退出。 – Kenster 2013-02-14 17:37:04

相關問題