我将Quartz编码如下,并且第一项工作运行良好:
JobDetail jd = null;
CronTrigger ct = null;
jd = new JobDetail("Job1", "Group1", Job1.class);
ct = new CronTrigger("cronTrigger1","Group1","0/5 * * * * ?");
scheduler.scheduleJob(jd, ct);
jd = new JobDetail("Job2", "Group2", Job2.class);
ct = new CronTrigger("cronTrigger2","Group2","0/20 * * * * ?");
scheduler.scheduleJob(jd, ct);
但是我发现与Job1完全独立的Job2将无法执行。
调度程序是使用Java中的侦听器启动的。我也尝试过使用scheduler.addJob(jd,true);但没有任何变化。我正在Windows 7上通过JVM运行Java。
最佳答案
您如何知道该作业无法运行?如果用Job1.class
代替Job2.class
,它仍然会失败吗?当您交换将它们添加到调度程序中的顺序时,还是只保留Job2
?或者,如果您将Job2
简化为仅将消息打印到控制台?
我怀疑Job2
执行死于异常。