求助,项目出现莫名错误

19-Dec-2017 08:44:22.062 信息 [sample%0043ache3.data] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading Illegal access: this web application instance has been stopped already. Could not load [net.sf.ehcache.store.disk.DiskStore$KeySet]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
 java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [net.sf.ehcache.store.disk.DiskStore$KeySet]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
	at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1311)
	at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1299)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1158)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
	at net.sf.ehcache.store.disk.DiskStore.keySet(DiskStore.java:521)
	at net.sf.ehcache.store.disk.DiskStorageFactory$DiskExpiryTask.run(DiskStorageFactory.java:828)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

19-Dec-2017 08:45:00.013 信息 [cron4j::scheduler[bf7ce00f5a3eb70278015f1f000001606c3a7fca62e11f38]::launcher[bf7ce00f5a3eb7027a39b955000001606c3b16e240a1d168]] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading Illegal access: this web application instance has been stopped already. Could not load [it.sauronsoftware.cron4j.TaskTable]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
 java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [it.sauronsoftware.cron4j.TaskTable]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
	at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1311)
	at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1299)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1158)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
	at it.sauronsoftware.cron4j.MemoryTaskCollector.getTasks(Unknown Source)
	at it.sauronsoftware.cron4j.LauncherThread.run(Unknown Source)

Exception in thread "cron4j::scheduler[bf7ce00f5a3eb70278015f1f000001606c3a7fca62e11f38]::launcher[bf7ce00f5a3eb7027a39b955000001606c3b16e240a1d168]" java.lang.NoClassDefFoundError: it/sauronsoftware/cron4j/TaskTable
	at it.sauronsoftware.cron4j.MemoryTaskCollector.getTasks(Unknown Source)
	at it.sauronsoftware.cron4j.LauncherThread.run(Unknown Source)
19-Dec-2017 08:45:00.015 信息 [cron4j::scheduler[bf7ce00f5a3eb70278015f1f000001606c3a7fd73aff922f]::launcher[bf7ce00f5a3eb7021cb73f10000001606c3b16e112ec419d]] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading Illegal access: this web application instance has been stopped already. Could not load [it.sauronsoftware.cron4j.TaskTable]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
 java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [it.sauronsoftware.cron4j.TaskTable]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
	at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1311)
	at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1299)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1158)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
	at it.sauronsoftware.cron4j.MemoryTaskCollector.getTasks(Unknown Source)
	at it.sauronsoftware.cron4j.LauncherThread.run(Unknown Source)

Caused by: java.lang.ClassNotFoundException: Illegal access: this web application instance has been stopped already. Could not load [it.sauronsoftware.cron4j.TaskTable]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
	at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1301)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1158)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
	... 2 more

莫名其妙出现这个问题,现在项目启动不起来了,求助!!!

评论区

Lintel

2017-12-19 09:04

it.sauronsoftware.cron4j.TaskTable ClassNotFoundException

wendell620

2017-12-19 09:18

初步找到原因是因为tomcat启动两次引起的错误,换成Jfinal.start可以启动,不明白为什么会启动两次

JFinal

2017-12-19 11:16

@wendell620 启动两次是 tomcat 的一个大坑,很久以前就写过博客说明过:
https://my.oschina.net/jfinal/blog/353062

wendell620

2017-12-19 11:39

@JFinal 之前都没出现过这种情况,突然就出现了,用IDEA启动的,如何配置路径啊?

JFinal

2017-12-19 12:00

@wendell620 为啥开发的时候不用 jetty,而是用 tomcat 呢? 从来没有在 IDEA 中用过 tomcat,建议找找相关资料

小破开发小浪

2019-04-15 15:22

数据库密码配置错误也会报这个异常,修改为正确的数据库密码之后就不提示这个异常了

tekeyoko

2019-07-10 10:59

很神奇,ActionKey重复也会报类似的错误。如果用 Jfinal.start 才会提示ActionKey重复,用Tomcat启动则只是抛出java.lang.NoClassDefFoundError: it/sauronsoftware/cron4j/TaskTable 之类的错误,看不到真正的出错原因

JFinal

2019-07-10 11:29

@tekeyoko actionKey 重复会明确报一个 action already exists 的异常, NoClassDefFoundError 这个一般是缺包引起的

热门反馈

扫码入社