2016-06-08 40 views
1

我使用Spring 4.0.2與Java配置。沒有XML配置。@Scheduled運行兩次,彈簧4 java配置

我有@Scheduled cron作業的註釋。它運行兩次。有人能幫我嗎?這是我正在嘗試的。

@Scheduled(cron = "1 * * * * ?" 
+0

當你_want_它運行? – Roman

+0

如果它正在運行兩次,您將安排兩次。讓我猜你有一個'ContextLoaderListener'和'DispatcherServlet'都執行組件掃描(或更糟糕的)加載相同的對象。 –

回答

0

@Scheduled(cron = "1 * * * * ?"):在每個(任何)分鐘的01秒運行您的工作。

因此,你的工作每分鐘運行一次。

測試:

@Scheduled(cron = "1 * * * * ?") 
    public void run(){ 
     System.out.println("Running Test Run : "+DateTime.now()); 
    } 

輸出:

Running Test Run : 2016-06-08T20:06:01.019Z 
Running Test Run : 2016-06-08T20:07:01.015Z 
Running Test Run : 2016-06-08T20:08:01.013Z 
Running Test Run : 2016-06-08T20:09:01.011Z 

More info on Spring cron expressions.

+0

其實當我在server.xml中評論上下文路徑時,它只運行一次。 –