Планировщик кварца не запускает задание cron - PullRequest
0 голосов
/ 26 мая 2020

Я пытался использовать CronTrigger в кварцевом планировщике. Планировщик запускается, но задание не запускается. Ниже приведен мой код: код класса

SchedulerFactory factory = new StdSchedulerFactory();
Scheduler scheduler = factory.getScheduler();
DateBuilder.evenMinuteDate(new Date());
JobDetail job = JobBuilder.newJob(Sample.class).withIdentity("job1", "group1").build();

CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity("trigger1", "group1")
        .withSchedule(CronScheduleBuilder.cronSchedule("0 * * ? * *")).build();

scheduler.scheduleJob(job, trigger);

scheduler.start();

Sample имеет только один оператор печати.

Текущий выход ниже,

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.

Текущая версия,

<dependency>
    <groupId>org.quartz-scheduler</groupId>
    <artifactId>quartz</artifactId>
    <version>2.3.2</version>
</dependency>

Я что-то упустил?

1 Ответ

1 голос
/ 26 мая 2020

Вот ваш пример с реализованным классом Sample:

public class TestCronJob {
    public static void main(String[] args) throws SchedulerException {
        SchedulerFactory factory = new StdSchedulerFactory();
        Scheduler scheduler = factory.getScheduler();
        DateBuilder.evenMinuteDate(new Date());
        JobDetail job = JobBuilder.newJob(Sample.class).withIdentity("job1", "group1").build();

        CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity("trigger1", "group1")
                .withSchedule(CronScheduleBuilder.cronSchedule("0 * * ? * *")).build();

        scheduler.scheduleJob(job, trigger);

        scheduler.start();
    }

    public static class Sample implements Job {

        @Override
        public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
            System.out.println("From job: " + new Date());
        }
    }
}

и он печатает каждую минуту:

From job: Tue May 26 17:59:00 EEST 2020
From job: Tue May 26 18:00:00 EEST 2020
...

Итак, он работает, как ожидалось. В вашем случае это может быть связано с фреймворком ведения журнала? Я вижу, что у вас есть вывод:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...