java.lang.CompatibleClassChangeError:使用Struts2和QuartzSchedulerListener实现类

java.lang.CompatibleClassChangeError:使用Struts2和QuartzSchedulerListener实现类,java,class,struts2,scheduler,quartz,Java,Class,Struts2,Scheduler,Quartz,我有一个石英完美工作的项目,现在,我正在做另一个,但它给我一个额外的错误,我没有自己解决 痕迹很明显 *GRAVE: Excepcion enviando evento inicializado de contexto a instancia de escuchador de clase com.is.pr.timer.QuartzSchedulerListener java.lang.IncompatibleClassChangeError: Implementing class

我有一个石英完美工作的项目,现在,我正在做另一个,但它给我一个额外的错误,我没有自己解决

痕迹很明显

 *GRAVE: Excepcion enviando evento inicializado de contexto a instancia de escuchador de clase com.is.pr.timer.QuartzSchedulerListener
java.lang.IncompatibleClassChangeError: Implementing class
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoade
r.java:2818)
        at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1
148)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1
643)
        at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1
521)
        at com.is.pr.timer.QuartzSchedulerListener.contextInitialized(QuartzSchedulerListe
ner.java:25)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:470
1)
        at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5204)
        at org.apache.catalina.core.StandardContext$1.call(StandardContext.java:5199)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)*
它得到错误的那一行

public class QuartzSchedulerListener implements ServletContextListener {

public void contextDestroyed(ServletContextEvent arg0) {
    //
}

public void contextInitialized(ServletContextEvent arg0) {

    JobDetail job = JobBuilder.newJob(CheckStates.class)
        .withIdentity("anyJobName", "group1").build();

    try {

        Trigger trigger = TriggerBuilder
          .newTrigger()
          .withIdentity("anyTriggerName", "group1")
          .withSchedule(
             CronScheduleBuilder.cronSchedule("0/70 * * * * ?"))
          .build();

        Scheduler scheduler = new StdSchedulerFactory().getScheduler();
        scheduler.start();
        scheduler.scheduleJob(job, trigger);

    } catch (SchedulerException e) {
        e.printStackTrace();
    }
在my web.xml中,y还添加了:

<listener>
      <listener-class>
            com.is.pr.timer.QuartzSchedulerListener
      </listener-class>
</listener>
但什么都不管用。我从另一个正在运行的项目中复制了相同的内容,我缺少了什么


非常感谢。

问题解决了。这是因为我在lib文件夹中有一个旧库:我删除了它,它可以工作。

错误是什么?我放的第一个。*GRAVE:Excepcion enviando evento inicializado de contexto a Instancea de escuchador de clase com.is.pr.timer.QuartzSchedulerListener java.lang.CompatibleClassChangeError:实现类
c3p0-0.9.1.1.jar
log4j-1.2.16.jar
quartz-2.2.3.jar
quartz-all-2.1.5.jar
quartz-jobs-2.2.3.jar
slf4j-api-1.7.7-jar
slf4j-log4j12-1.7.7.jar