即使已经过了时间,Quartz cron调度程序在设置作业后立即执行

时间:2018-06-13 13:44:23

标签: java quartz-scheduler quartz

我在我的JAVA应用程序中使用quartz设置调度程序。我在那里使用cron scheduler;

    trigger = TriggerBuilder.newTrigger()
                            .startAt(startDateObj)
                            .withIdentity(uniqueID, "group1")
                            .withSchedule(
                                    CronScheduleBuilder.cronSchedule(cronString)
                                    .withMisfireHandlingInstructionIgnoreMisfires()
                                )
                            .build();

    JobDetail jobDetail = JobBuilder.newJob(this.job.getClass())
                        .withIdentity(uniqueID, "group1")
                        .build();

    SchedulerFactory sf = new StdSchedulerFactory();
    Scheduler sched = sf.getScheduler();
    sched.getContext().put("data", this.map);
    sched.scheduleJob(jobDetail, trigger);

现在的问题是,我只想考虑每天上午9点设置调度程序。现在,如果当前时间(调度程序设置时间)是上午9:05,那么我预计该作业应该在第二天上午9点运行。

但是,在我设置调度程序时,它会立即执行。

你能告诉我为什么会这样吗?我在做某些概念错误的事情吗?

任何帮助对我来说都很棒。提前谢谢。

0 个答案:

没有答案