先贴上错误:
![](https://img-blog.csdn.net/20151017150257118?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
org.quartz.SchedulerException: SchedulerPlugin class 'org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin' could not be instantiated. [See nested exception: java.lang.ClassNotFoundException: Unable to load class org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin by any known loaders.]
at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1039)
at org.quartz.impl.StdSchedulerFactory.getScheduler(StdSchedulerFactory.java:1525)
at org.quartz.impl.StdSchedulerFactory.getDefaultScheduler(StdSchedulerFactory.java:1541)
at com.swh.jobweb.main.MyJob6Main.main(MyJob6Main.java:25)
在搞Quartz-Job项目时报如上的错误,如果你的quartz jar包已加,而且jar包也找到了
XMLSchedulingDataProcessorPlugin类但执行时扔报上面的错误,则考虑quartz依赖的jar是否已加,可以把XMLSchedulingDataProcessorPlugin类拷贝项目中即可看到XMLSchedulingDataProcessorPlugin类还需要导入哪些jar文件,如下图则可以看出需要JTA和quartz的jobs包(我用的是quartz-2.2.2,其它版本情况类似),所以quartz需要导入的jar包有(2.2.x版):quartz-2.2.x.jar,quartz-jobs-2.2.x.jar和jta-1.1.jar
另外要注意:
在1.8版之前
jobInitializer的配置为:
org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.JobInitializationPlugin
1.8版之后
jobInitializer采用:
org.quartz.plugin.jobInitializer.class = org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin
否则的话,比如我使用的是2.2.2版却使用
org.quartz.plugins.xml.JobInitializationPlugin配置,则会报如下的错误,如果你使用1.8之前的版本还报如下错误则可以采用上面同理方法进行解决。
org.quartz.SchedulerException: SchedulerPlugin class 'org.quartz.plugins.xml.JobInitializationPlugin' could not be instantiated. [See nested exception: java.lang.ClassNotFoundException: org.quartz.plugins.xml.JobInitializationPlugin]
at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1039)
at org.quartz.impl.StdSchedulerFactory.getScheduler(StdSchedulerFactory.java:1525)
at org.quartz.impl.StdSchedulerFactory.getDefaultScheduler(StdSchedulerFactory.java:1541)
祝luck