我是Quartz的新手,并且遇到编译错误。我只是想根据Quartz的Hello World的第1课来运行HelloJob。我在声明带有错误的JobDetail时遇到麻烦:The method newJob(Class<? extends Job>)类型的JobBuilder不适用于参数(“类”)。

最初,该代码在newJobnewTriggersimpleSchedule处有3个错误,

// define the job and tie it to our HelloJob class
JobDetail job = newJob(HelloJob.class)
    .withIdentity("job1", "group1")
    .build();

// Trigger the job to run now, and then repeat every 40 seconds
Trigger trigger = newTrigger()
    .withIdentity("trigger1", "group1")
    .startNow()
    .withSchedule(simpleSchedule()
            .withIntervalInSeconds(40)
            .repeatForever())
    .build();

没有JobBuilder.newJob(...),TriggerBuilder.newTrigger(...),SimpleScheduleBuilder.simpleSchedule(...)。与给出的示例不同,我继续添加了导入,并在newJob,newTrigger等前面附加了类调用,从而消除了2/3错误。但是似乎错误仍然存​​在
 JobDetail job = JobBuilder.newJob(HelloJob.class)
        .withIdentity("job1", "group1")
        .build();

我也尝试过将工作宣言替换为
JobDetail job = new JobDetail("job1", "group1", HelloJob.class);

但这以Cannot instantiate the type JobDetail结尾,似乎有一些例子可以做到这一点。

非常感谢您的澄清,

谢谢!

最佳答案

您需要具有以下代码行:

import static org.quartz.JobBuilder.*;

然后在应该工作。希望。

编辑:
并确保“HELLOJOB”实现工作!

那里。

09-09 17:49