简体   繁体   中英

Quartz Scheduler - Second Job Not Executing

I'm trying to create two jobs that will execute daily. For some reason, only the first job is executing. No exception is thrown. Any idea why this might be the case? Here's my code:

      SchedulerFactory schedFact = new org.quartz.impl.StdSchedulerFactory();

          Scheduler sched = schedFact.getScheduler();

          sched.start();


        JobDetail sysJob = newJob(SysParseJob.class).withIdentity("sysJob").build();

        Trigger sysTrigger = newTrigger()
                .withIdentity("sysTrigger")
                .forJob("sysJob")
                .withSchedule(dailyAtHourAndMinute(0, 5)) // execute job daily at 12:05
                .build();

        sched.scheduleJob(sysJob, sysTrigger);


        JobDetail histJob = newJob(HistParseJob.class).withIdentity("histJob").build();

        Trigger histTrigger = newTrigger()
                .withIdentity("histTrigger")
                .forJob("histJob")
                .withSchedule(dailyAtHourAndMinute(0, 1)) // execute job daily at 12:01
                .build();

        sched.scheduleJob(histJob, histTrigger);

Perhaps there might be some error in your trigger building. Check if this solves your purpose

public static void main(String[] args) throws SchedulerException,
            ParseException {
        SchedulerFactory schedFact = new StdSchedulerFactory();
        Scheduler sched = schedFact.getScheduler();
        sched.start();

        JobDetail sysJob = JobBuilder.newJob(HelloJob1.class)
                .withIdentity(new JobKey("sysJob")).build();

        Trigger sysTrigger = TriggerBuilder
                .newTrigger()
                .withIdentity(new TriggerKey("sysTrigger"))
                .withSchedule(dailyAtHourAndMinute(0, 51))
                .startNow()
                .build();
        sched.scheduleJob(sysJob, sysTrigger);

        JobDetail histJob = JobBuilder.newJob(HelloJob2.class)
                .withIdentity(new JobKey("histJob ")).build();

        Trigger sysTrigger2 = TriggerBuilder
                .newTrigger()
                .withIdentity(new TriggerKey("sysTrigger2"))
                .withSchedule(dailyAtHourAndMinute(0, 52))
                .startNow()
                .build();
        sched.scheduleJob(histJob, sysTrigger2);
    }

    private static CronScheduleBuilder dailyAtHourAndMinute(int hour,int minute){
        return CronScheduleBuilder.dailyAtHourAndMinute(hour, minute);
    }

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM