package org.quartz;
import org.quartz.Scheduler;
import org.quartz.JobDetail;
import org.quartz.JobKey;
import org.quartz.Trigger;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.quartz.SchedulerException;
import org.quartz.impl.StdSchedulerFactory;
import static org.quartz.JobBuilder.*;
import static org.quartz.TriggerBuilder.*;
import static org.quartz.SimpleScheduleBuilder.*;
import static org.quartz.CronScheduleBuilder.*;
import static org.quartz.CalendarIntervalScheduleBuilder.*;
import static org.quartz.DateBuilder.*;
class myJob implements Job {
public void execute(JobExecutionContext context)
throws JobExecutionException
{
System.out.println("Hello! HelloJob is executing.");
}
}
public class schedule{
public static void main(String args[]) throws Exception{
System.out.println("Java working");
try {
// Grab the Scheduler instance from the Factory
JobKey jobKeyA = new JobKey("myJob", "group1");
JobDetail jobA = JobBuilder.newJob(myJob.class)
.withIdentity(jobKeyA).build();
// Trigger the job to run now, and then every 40 seconds
Trigger trigger1 = TriggerBuilder
.newTrigger()
.withIdentity("dummyTriggerName1", "group1")
.withSchedule(
CronScheduleBuilder.cronSchedule("0/5 * * * * ?"))
.build();
Scheduler scheduler = new StdSchedulerFactory().getScheduler();
// and start it off
scheduler.start();
// Tell quartz to schedule the job using our trigger
scheduler.scheduleJob(jobA, trigger1);
} catch (SchedulerException se) {
se.printStackTrace();
}
}
}
而且我得到一個實例化作業的錯誤,然後顯然所有作業的觸發器都設置爲ERROR狀態。 是什麼原因? 請幫助它是非常重要的。 爲我提供了答案。 錯誤錯誤發生在Quartz中執行的實例化作業sheduler
[ERROR] 03年12月28日:03:30.008 PM DefaultQuartzScheduler_QuartzSchedulerThread [org.quartz.core.ErrorLogger]
時發生錯誤實例化作業被執行。作業= 'group1.myJob'
org.quartz.SchedulerException:問題實例化類 'org.quartz.myJob'[見嵌套異常: java.lang.IllegalAccessException:類 org.quartz.simpl。 SimpleJobFactory不能在 org.quartz訪問在org.quartz.simpl.SimpleJobFactory.newJob(SimpleJobFactory.java:58)類 org.quartz.myJob與修飾語 「」]
的成員
。 simpl.PropertySettingJobFactory.newJob(PropertySettingJobFactory.java :69)
在org.quartz.core.JobRunShell.initialize(JobRunShell.java:127)
在 org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:375) 引起: java.lang.IllegalAccessException: 類org.quartz.simpl.SimpleJobFactory不能訪問類 org.quartz.myJob的成員與改性劑 「」
在sun.reflect.Reflection.ensureMemberAccess(Reflection.java:102 )
at java.lang.Class。的newInstance(Class.java:436)
在org.quartz.simpl.SimpleJobFactory.newJob(SimpleJobFactory.java:56)
... 3更[INFO] 03年12月28日:03:30.013 PM DefaultQuartzScheduler_QuartzSchedulerThread [org.quartz.simpl.RAMJobStore]
工作group1.myJob的所有觸發器設置爲錯誤狀態。
你可以添加你所得到的異常堆棧跟蹤? –
yups ....我給了錯誤例外 – striker0794
請給我提供解決方案 – striker0794