我不知道我在这里做错了什么。我收到错误
java.lang.NoSuchMethodError: org.springframework.scheduling.quartz.SchedulerFactoryBean.getScheduler()Lorg/quartz/Scheduler;
这是造成的 公共类myJobLauncher {
@Autowired
@Qualifier("myQuartzScheduler")
private SchedulerFactoryBean scheduler_factory = null;
.......
........
Scheduler someScheduler = scheduler_factory.getScheduler();
这是我的xml文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:task="http://www.springframework.org/schema/task"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
http://www.springframework.org/schema/task
http://www.springframework.org/schema/task/spring-task-4.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.0.xsd">
....
<bean id="myQuartzScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="autoStartup">
<value>true</value>
</property>
<property name="name">
<value>myScheduler</value>
</property>
<property name="quartzProperties">
<props>
<prop key="org.quartz.threadPool.class">org.quartz.simpl.SimpleThreadPool</prop>
<prop key="org.quartz.threadPool.threadCount">1</prop>
<prop key="org.quartz.jobStore.class">org.quartz.simpl.RAMJobStore</prop>
<prop key="org.quartz.scheduler.skipUpdateCheck">true</prop>
</props>
</property>
<property name="jobFactory">
<bean class="org.springframework.scheduling.quartz.SpringBeanJobFactory" />
</property>
不确定为什么我会得到那个例外
这是我的pom文件条目 org.quartz调度 石英 1.8.6
使用spring framework 4.0.0
添加了所有spring-context-support,spring-context,beans,transaction。
我们有一些使用上述版本的石英的客户端代码,我们正在整合他们的spring项目并为其添加增强功能。所以底线是我们无法修改他们的代码。
答案 0 :(得分:0)
我终于解决了这个问题。
我在我的pom文件中明确包含了以下内容。我印象中这将自动添加为Quartz使用的。
<dependency>
<groupId>asm</groupId>
<artifactId>asm</artifactId>
<version>3.2</version>
</dependency>
还将Quartz配置移动到单独的xml文件中。