spring与quartz不兼容

本文详细记录了如何解决在使用Spring 3.1版本与Quartz 2.1.1版本集成时遇到的JobFactory异常问题。通过将Spring升级至3.1及以上版本,成功解决了JobFactory类方法存在的AbstractMethodError问题,避免了今后在项目中使用Quartz时可能出现的类似错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    最近学习quartz调度框架,想整合spring与quartz封装成一个动态的调度框架。

    spring版本是3.0.5,quartz使用2.1.1版本,在集成过程中遇到以下异常:

    2014-01-18 19:57:10,062 ERROR org.quartz.core.ErrorLogger:(QuartzScheduler.java:2360) - An error occured instantiating job to be executed. job= 'CRON.clearLog'org.quartz.SchedulerException: Problem instantiating class 'org.quartz.jobs.NoOpJob' - [See nested exception: java.lang.AbstractMethodError:

org.springframework.scheduling.quartz.AdaptableJobFactory.newJob(Lorg/quartz/spi/TriggerFiredBundle;Lorg/quartz/Scheduler;)Lorg/quartz/Job;]
	at org.quartz.core.JobRunShell.initialize(JobRunShell.java:141)
	at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:381)
Caused by: java.lang.AbstractMethodError:
 org.springframework.scheduling.quartz.AdaptableJobFactory.newJob(Lorg/quartz/spi/TriggerFiredBundle;Lorg/quartz/Scheduler;)Lorg/quartz/Job;
	at org.quartz.core.JobRunShell.initialize(JobRunShell.java:134)
	... 1 more
2014-01-18 19:57:10,062  INFO org.springframework.scheduling.quartz.LocalDataSourceJobStore:(JobStoreSupport.java:3053) 
 - All triggers of Job DEFAULT.clearLog set to ERROR state.

google上搜了一通,在http://stackoverflow.com这个网站上找到了答案,原来是quartz2与spring3.1之前的版本不兼容

因此,要么是将spring升级到3.1及以上版本,要么是把quartz降级,推荐使用第一种方法。

    于是我将spring3.0.5升级到3.1.0,果然就不报错了。在此记录一下,以免以后使用到quartz的时候会犯同样的错!


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值