2012-01-30 120 views
3

我有一个石英库的问题。我使用它与春天2.5:弹簧2.5 +石英java.lang.NoClassDefFoundError:org/quartz/JobDetail

<bean id="reminderBean" class="com.mail.timexis.ReminderBean"> 
     <property name="mailSender"> 
      <ref local="timexisMailSender" /> 
     </property> 
    </bean> 

    <bean id="jobDetail" 
     class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"> 
     <property name="targetObject" ref="reminderBean" /> 
     <property name="targetMethod" value="execute" /> 
    </bean> 

    <bean id="cronTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean"> 
     <property name="jobDetail" ref="jobDetail" /> 
     <!-- run every morning at 6 AM --> 
     <property name="cronExpression" value="* * * * * ?" /> 
    </bean> 

    <bean class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> 
     <property name="triggers"> 
      <list> 
       <ref bean="cronTrigger" /> 
      </list> 
     </property> 
    </bean> 

Maven的:

<dependency> 
      <groupId>org.quartz-scheduler</groupId> 
      <artifactId>quartz</artifactId> 
      <version>1.8.4</version> 
     </dependency> 
     <dependency> 
      <groupId>commons-collections</groupId> 
      <artifactId>commons-collections</artifactId> 
      <version>3.2</version> 
     </dependency> 

当我运行Tomcat不能实例化“的JobDetail”豆,因为它无法看到使用MethodInvokingJobDetailFactoryBean中类(Caused by: java.lang.NoClassDefFoundError: org/quartz/JobDetail)的JobDetail类

Maven下载罐子,我可以在MavenDependencies下看到它,我可以找到JobDetail类。

我认为这是弹簧2.5和石英的兼容性。有任何想法吗?

回答

5

您是否将依赖关系添加到spring-context-support

它包含org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean这似乎是根据堆栈跟踪丢失。

+0

感谢您的回答,但没有帮助... – 2012-01-30 09:58:02

+1

您是否打开战争档案并查看了失踪班? – 2012-01-30 10:00:50

+0

问题解决:我有2个项目,第一个使用第二个作为依赖项。所以建立战争的那个人没有这个罐子。 – 2012-01-30 10:46:02