【问题标题】:Quartz CronTrigger firing itself many timesQuartz CronTrigger 多次触发自身
【发布时间】:2018-07-20 07:59:46
【问题描述】:

我正在尝试使用quartz api实现一个CronTrigger,它可以工作但不是很好,当达到cron表达式时,作业会无限执行,我不知道为什么。

我只想在 cron 表达式到达时执行 1 次。

有人可以帮我知道为什么它会执行多次吗?

这是我的代码

    package cron;

import java.text.ParseException;

import org.quartz.CronTrigger;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerException;
import org.quartz.impl.StdSchedulerFactory;

import cron.HelloJob;

public class Quartz {

    public static void main(String[] args) throws ParseException, SchedulerException {
        JobDetail job = new JobDetail();
        job.setName("health check");
        job.setJobClass(HelloJob.class);

        System.out.println("After job");

        CronTrigger triggr = new CronTrigger();
        triggr.setName("Check");
        triggr.setCronExpression("* 50 07 * * ? *");

        System.out.println("Cron expression" + triggr.getCronExpression());

        Scheduler scheduler2 = new StdSchedulerFactory().getScheduler();
        scheduler2.start();
        scheduler2.scheduleJob(job, triggr);
    }

}

这就是工作

package cron;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;


public class HelloJob implements Job {
    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
        System.out.println("Hello job");


    }


}

这是我的输出

我只想用我的 cron 打印 1 次

【问题讨论】:

    标签: java scheduled-tasks quartz-scheduler job-scheduling crontrigger


    【解决方案1】:

    您将其配置为每秒触发一次(第一个 *):

    triggr.setCronExpression("* 50 07 * * ? *");
    

    要解决它,只需输入一个值,例如 0:

    triggr.setCronExpression("0 15 15 * * * *");
    

    这应该在每天 15:15:00 (hh:mm:ss) 触发。

    在这里查看用法:

    http://www.quartz-scheduler.org/documentation/quartz-2.x/tutorials/crontrigger.html

    【讨论】:

    • 你是对的! @Repoker 非常感谢你,对我的菜鸟错误感到抱歉!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-07
    • 2014-11-05
    相关资源
    最近更新 更多