Исключение при запуске программы Quartz Scheduler - PullRequest
0 голосов
/ 26 марта 2010

Я получаю следующее исключение при запуске моей программы Quartz Schdular.

Ниже приведена исключительная трассировка

Mar 26, 2010 2:54:24 PM org.quartz.core.QuartzScheduler start
INFO: Scheduler DefaultQuartzScheduler_$_NON_CLUSTERED started.
Exception in thread "main" java.lang.IllegalArgumentException: Job class must implement the Job interface.
    at org.quartz.JobDetail.setJobClass(JobDetail.java:291)
    at org.quartz.JobDetail.<init>(JobDetail.java:138)
    at com.Quarrtz.RanchSchedule.main(RanchSchedule.java:18)

Я включил Quartz-1.7.2.jar и Quartz-all-1.7.2.jar в моем пути к классам вместе с commom-logging 1.1.jar и jdk 6

это пример, который я скопировал и вставил из [JavaRanch] [1]

Первый пример на приведенной выше странице

public interface Job {

    void execute (JobExecutionContext ctx);
}

public class RanchJob implements Job {

    public void execute (JobExecutionContext ctx) throws JobExecutionException {
        System.out.println("[JOB] Welcome at JavaRanch");
    }
}

public class RanchSchedule {

    public static void main (String[] args) {       
        try {
            SchedulerFactory factory = new org.quartz.impl.StdSchedulerFactory();

            Scheduler scheduler = factory.getScheduler();
            scheduler.start();

            JobDetail jobDetail = new JobDetail("ranchJob", null, RanchJob.class);
            // Fires every 10 seconds
            Trigger ranchTrigger = TriggerUtils.makeSecondlyTrigger(10); 
            ranchTrigger.setName("ranchTrigger");

            scheduler.scheduleJob(jobDetail, ranchTrigger);
        } catch (SchedulerException ex) {
            ex.printStackTrace();
        }
    }
}

1 Ответ

3 голосов
/ 26 марта 2010

Вы написали интерфейс Job в своем исходном коде?

public interface Job {
    void execute (JobExecutionContext ctx);
}

Если это так, вам не нужно этого делать. Кварц имеет свой собственный интерфейс Job (в quartz.jar). Оставьте только свои классы RanchJob и RanchSchedule, и они должны работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...