在quartz中遇到的问题

zhong_pj2018 2018-02-28 05:18:55
请教一下各位高手,我用的是Tomcat 7.0+quartz 2.2.3,jdk是1.7
我在quartz.properties中定义了:
org.quartz.plugin.jobInitializer.class: XMLSchedulingDataProcessorPlugin

但是在运行一个job: test.java使用Run As Java Application运行,报错:
Exception in thread "main" org.quartz.SchedulerException: SchedulerPlugin class 'XMLSchedulingDataProcessorPlugin' could not be instantiated. [See nested exception: java.lang.ClassNotFoundException: XMLSchedulingDataProcessorPlugin]
at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1041)
at org.quartz.impl.StdSchedulerFactory.getScheduler(StdSchedulerFactory.java:1525)
at aaa.main(aaa.java:25)
Caused by: java.lang.ClassNotFoundException: XMLSchedulingDataProcessorPlugin
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at org.quartz.simpl.InitThreadContextClassLoadHelper.loadClass(InitThreadContextClassLoadHelper.java:72)
at org.quartz.simpl.CascadingClassLoadHelper.loadClass(CascadingClassLoadHelper.java:114)
at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1037)
... 2 more

我检查了org.quartz.xml.XMLSchedulingDataProcessor.java文件,没有发现有报错的地方。请教用过quartz的朋友指点迷津!
...全文
1129 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhong_pj2018 2018-02-28
  • 打赏
  • 举报
回复
问题已解决,已改为
org.quartz.plugin.jobInitializer.class: org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin
zhong_pj2018 2018-02-28
  • 打赏
  • 举报
回复
现在新的问题出来了:
Exception in thread "main" org.quartz.SchedulerException: JobStore SchedulerPlugin 'org.quartz.plugins.xml.XMLSchedulingDataProcessorPlugin' props could not be configured. [See nested exception: java.lang.NoSuchMethodException: No setter for property 'overWriteExistingJobs']
	at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1049)
	at org.quartz.impl.StdSchedulerFactory.getScheduler(StdSchedulerFactory.java:1525)
	at aaa.main(aaa.java:25)
Caused by: java.lang.NoSuchMethodException: No setter for property 'overWriteExistingJobs'
	at org.quartz.impl.StdSchedulerFactory.setBeanProps(StdSchedulerFactory.java:1413)
	at org.quartz.impl.StdSchedulerFactory.instantiate(StdSchedulerFactory.java:1045)
	... 2 more
这是什么意思呢?
Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用。Quartz可以用来创建简单或为运行十个,百个,甚至是好几万个Jobs这样复杂的程序。Jobs可以做成标准的Java组件或 EJBs。 Quartz的优势: 1、Quartz是一个任务调度框架(库),它几乎可以集成到任何应用系统。 2、Quartz是非常灵活的,它让您能够以最“自然”的方式来编写您的项目的代码,实现您所期望的行为 3、Quartz是非常轻量级的,只需要非常少的配置 —— 它实际上可以被跳出框架来使用,如果你的需求是一些相对基本的简单的需求的话。 4、Quartz具有容错机制,并且可以在重启服务的时候持久化(”记忆”)你的定时任务,你的任务也不会丢失。 5、可以通过Quartz,封装成自己的分布式任务调度,实现强大的功能,成为自己的产品。6、有很多的互联网公司也都在使用Quartz。比如美团 Spring是一个很优秀的框架,它无缝的集成了Quartz,简单方便的让企业级应用更好的使用Quartz进行任务的调度。   课程说明:在我们的日常开发,各种大型系统的开发少不了任务调度,简单的单机任务调度已经满足不了我们的系统需求,复杂的任务会让程序猿头疼, 所以急需一套专门的框架帮助我们去管理定时任务,并且可以在多台机器去执行我们的任务,还要可以管理我们的分布式定时任务。本课程从Quartz框架讲起,由浅到深,从使用到结构分析,再到源码分析,深入解析Quartz、Spring+Quartz,并且会讲解相关原理, 让大家充分的理解这个框架和框架的设计思想。由于互联网的复杂性,为了满足我们特定的需求,需要对Spring+Quartz进行二次开发,整个二次开发过程都会进行讲解。Spring被用在了越来越多的项目, Quartz也被公认为是比较好用的定时器设置工具,学完这个课程后,不仅仅可以熟练掌握分布式定时任务,还可以深入理解大型框架的设计思想。

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧