1
我在Grails 3.1.9中使用@Scheduled
註解,從3.1.0.RC2升級到3.1.9後,註釋的服務方法根本沒有執行。降級回到3.1.0.RC2會導致它再次工作。升級到Grails後,@ Scheduled Annotation失敗3.1.9
這裏是我的服務...
package com.mycompany.app
import grails.transaction.Transactional
import org.springframework.scheduling.annotation.Scheduled
@Transactional
class InstanceSnapshotService {
@Scheduled(fixedDelay = 30000L, initialDelay = 30000L)
void updateSnapshots() {
Date start = new Date()
log.info("Started Updating Snapshots at $start")
... do stuff ...
log.info("Finished Updating Snapshots after ${new Date().time - start.time}ms")
}
}
這裏是我的Application.groovy ...
package com.datapriviasoftware.completesso
...
import org.springframework.scheduling.annotation.EnableScheduling
@EnableScheduling
class Application extends GrailsAutoConfiguration implements EnvironmentAware {
static void main(String[] args) {
GrailsApp.run(Application)
}
@Override
void setEnvironment(Environment environment) {
...
}
}
就像我說的,我之前我們有這個運行了幾個星期前從Grails 3.1.0-RC2升級到Grails 3.1.9。我不確定這可能與它有什麼關係。
非常感謝您提供任何幫助。
你在某處註冊'InstanceSnapshotService'嗎?您可能缺少'@ Service'插入。 – Loucher
Grails根據約定註冊服務而不使用@ @ Service註解,但我嘗試添加註解以防萬一,但無濟於事。 (還是)感謝你的建議。 :-) – 10GritSandpaper
只是恢復到3.1.0.RC2工作正常。所以在3.1.0.RC2和3.1.9之間'@ Scheduled'看起來有些變化。現在調查以確定在哪裏。 –