0
public class CronTriggerExample
{
public static void main(String[] args) throws Exception
{
    try
    {
        JobDetail job = JobBuilder.newJob(HelloJob.class).withIdentity("dummyJobName", "group1").build();

        Trigger trigger =
                TriggerBuilder.newTrigger().withIdentity("dummyTriggerName", "group1")
                        .withSchedule(CronScheduleBuilder.cronSchedule("0/2 * * * * ?")).build();

        // schedule it
        Scheduler scheduler = new StdSchedulerFactory().getScheduler();
        scheduler.start();
        scheduler.scheduleJob(job, trigger);
        return;
    }
    catch (SchedulerException e)
    {
        e.printStackTrace();
    }
}
}

サーバーにいくつかのcronを設定するためにクォーツを使用しています。しかし、これがcronをスケジュールできるように、サーバーでこのファイルを実行するにはどうすればよいですか。プラグイン「org.codehaus.mojo」を使ってJavaファイルを実行しようとしました。しかし、mvn install をデーモンとして実行すると、常に新しいトリガーが作成されます。「mvn install」でcronを再初期化するために何をすべきか。

4

1 に答える 1

0

メイン メソッドを記述した方法では、アプリケーションはジョブをスケジュールした直後に終了します。Quartz タスクは別のスレッドでスケジュールされていますが、プロセスが終了すると、すべてのアクティブなスレッドが強制終了されます。

アプリケーションの実行を維持するには、ステートメントのwhile (true) {}後にステートメントを追加するだけです。scheduler.scheduleJob

ここで、maven に jar をビルドして実行させるだけですjava -jar myjar.jar

于 2012-10-16T14:52:40.383 に答える