我是Quartz的新手,遇到了编译错误。我只是尝试根据Quartz的Hello World第1课程运行HelloJob。我在声明JobDetail时遇到了问题,出现错误:JobBuilder
中的newJob(Class<? extends Job>)
方法不适用于参数(Class)"。
最初,代码有3个错误出现在newJob
,newTrigger
和simpleSchedule
上。
// 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
结束,而且好像有几个示例都这样做。
非常感谢澄清,
谢谢!