1

クォーツプラグイン(quartz2-0.2.2)をインストールし、grails-1.3.7を使用しています。

次に、「grails create-job」を使用してジョブクラスを作成し、テストとして小さなメッセージを出力するように変更しました。

class ImportFilesJob {

    def startDelay = 100000L

    def cronExpression = "0 30 22 * * ?"

    def execute() {
        log.info"ImportFilesJob start!"
        println "ImportFilesJob start!"
        Date runDate = DateUtils.today
        long start = System.currentTimeMillis()
        long end = System.currentTimeMillis()
        log.info "Finished ImportFilesJob in ${end - start} millisec."
        println"Finished ImportFilesJob in ${end - start} millisec."
    }
}

今、私は仕事が毎日午後10時30分に始まることを期待しています。

しかし、そうではありません...

私は何かが恋しいですか?

助けてくれてありがとう。

ニミー

4

2 に答える 2

4

これはあなたの「テスト」環境にありますか?その場合、Quartzはテストで自動的に起動しないように構成されています。QuartzConfig.groovyファイルを確認して設定します

autoStartup = true

そして、10:30まで待機していることをより早く確認するには、次のcron式を使用して、3分ごとに開始し、機能していることを確認します。

"0 0/3 * * *?"

于 2012-05-18T04:08:10.537 に答える
2

「トリガー」ブロックを忘れたと思います。

class MyFirstJob{
    def concurrent = false

    static triggers = {
        simple name: 'myFirstJobTrigger', startDelay: 1000, repeatInterval: 1000 }

    def group = "MyGroup"

    def execute(){ 
        println "MyFirstJob run!" 
    }
}
于 2012-05-18T18:06:09.650 に答える