项目可以正常运行,但是运行一会就会报错,必须clean才能重新启动,是什么原因?

严重: Error configuring application listener of class com.jbh.taskschedule.quartz.InitSchedulerJob
java.lang.ClassNotFoundException: com.jbh.taskschedule.quartz.InitSchedulerJob
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1891)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1734)
at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:504)
at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:486)
at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:113)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5015)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5615)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1561)
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)

classable类:
public class InitSchedulerJob implements ServletContextListener{

private Logger logger = LoggerFactory.getLogger(this.getClass());

// 系统初始化执行方法  
public void contextDestroyed(ServletContextEvent e) {  
    logger.debug("系统停止...");  
}  

/**
 * 启动随服务启动的定时任务
 */
public void contextInitialized(ServletContextEvent e) { 
    TasksSheduleConstant tsc  = (TasksSheduleConstant)SpringUtils.getBean("tasksSheduleConstant");
    final long delayedStartTimes = tsc.getDelayedStartTimes() < 0 ? 900000 : tsc.getDelayedStartTimes();

    if (tsc.isStartWithService()){
           Thread t = new Thread(new Runnable(){  
                public void run(){  
                    try {
                        Thread.sleep(delayedStartTimes);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    TaskScheduleService taskScheduleService = (TaskScheduleService) SpringUtils.getBean("taskScheduleService");

// 清空所有已经存在的定时任务
// taskScheduleService.clearAllRunningJobs();

                    logger.info("开始加载随服务启动定时任务调度...");  
                    QuartzSchedulerHelper schedulerHelper = (QuartzSchedulerHelper) SpringUtils.getBean("quartzSchedulerHelper");

                    List<TaskScheduleCfg> autoJobList =  taskScheduleService.findAllAutoStartupJobs();

                    if(null != schedulerHelper && null!= autoJobList && autoJobList.size() > 0){
                        schedulerHelper.addJobs(autoJobList);
                    }
                    logger.info("加载随服务启动定时任务调度完成共("+(null == autoJobList ? 0 : autoJobList.size())+")个...");          
                }
           });  
           t.setName("start_schedulerjob_with_service");
           t.start(); 
    } else {
        logger.info("任务调度是否随服务启动:"+tsc.isStartWithService()+" ,延迟启动时间: "+delayedStartTimes+"milliseconds");
    }
}

}

并不一定报错 ,有时候可以跑很久,但是经常报这个错,出现必须重新编译才可以正常跑,是内存什么的原因嘛?
请大神们支支招啊 !!!!

com.jbh.taskschedule.quartz.InitSchedulerJob这个类是你项目中的么?似乎不是quartzjar包中的类?重点查看这个类的上下文信息。