无法在Tomcat 6上部署Grails应用程序

时间:2021-02-13 21:50:52

I cannot deploy my Grails 2.2.4 application on my Tomcat 6. I've tried fresh installation of tomcat and even the old version of my application (which was running before).

我无法将Grails 2.2.4应用程序部署到Tomcat 6上。我尝试了tomcat的新安装,甚至还尝试了我的应用程序的旧版本(以前运行过)。

This exception is thrown after one min. after the tomcat starts:

此异常在tomcat启动后抛出。

INFO: Illegal access: this web application instance has been stopped already.  Could not load org.apache.commons.pool.impl.CursorableLinkedList$Cursor.  The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1600)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
    at org.apache.commons.pool.impl.CursorableLinkedList.cursor(CursorableLinkedList.java:305)
    at org.apache.commons.pool.impl.GenericObjectPool.evict(GenericObjectPool.java:1536)
    at org.apache.commons.pool.impl.GenericObjectPool$Evictor.run(GenericObjectPool.java:1749)
    at java.util.TimerThread.mainLoop(Timer.java:512)
    at java.util.TimerThread.run(Timer.java:462)
Exception in thread "Timer-0" java.lang.NoClassDefFoundError: org/apache/commons/pool/impl/CursorableLinkedList$Cursor
    at org.apache.commons.pool.impl.CursorableLinkedList.cursor(CursorableLinkedList.java:305)
    at org.apache.commons.pool.impl.GenericObjectPool.evict(GenericObjectPool.java:1536)
    at org.apache.commons.pool.impl.GenericObjectPool$Evictor.run(GenericObjectPool.java:1749)
    at java.util.TimerThread.mainLoop(Timer.java:512)
    at java.util.TimerThread.run(Timer.java:462)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.pool.impl.CursorableLinkedList$Cursor
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
    ... 5 more
Oct 24, 2013 8:34:55 PM org.apache.catalina.loader.WebappClassLoader loadClass
INFO: Illegal access: this web application instance has been stopped already.  Could not load net.sf.ehcache.store.compound.CompoundStore$KeySet.  The eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact.
java.lang.IllegalStateException
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1600)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
    at net.sf.ehcache.store.compound.CompoundStore.keySet(CompoundStore.java:216)
    at net.sf.ehcache.store.compound.factories.DiskStorageFactory$DiskExpiryTask.run(DiskStorageFactory.java:670)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
    at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
    at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$101(ScheduledThreadPoolExecutor.java:98)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(ScheduledThreadPoolExecutor.java:180)
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:204)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:662)

I really have no clue where to start to fix it. :-/

我真的不知道从哪里开始修复它。:- /

1 个解决方案

#1


-1  

You should add commons-pool-1.4.jar to you application with runtime scope.
Add

你应该添加commons -池- 1.4。使用运行时范围向应用程序发出jar。添加

grails.project.dependency.resolution = {
   // ...  
   dependencies {
        // ...
        runtime 'commons-pool:commons-pool:1.4'
   }
   // ...
}  

to project file grails-app/conf/BuildConfig.groovy

grails-app / conf / BuildConfig.groovy项目文件

Read more in Grails: Dependency Resolution

阅读Grails中的更多内容:依赖解析

#1


-1  

You should add commons-pool-1.4.jar to you application with runtime scope.
Add

你应该添加commons -池- 1.4。使用运行时范围向应用程序发出jar。添加

grails.project.dependency.resolution = {
   // ...  
   dependencies {
        // ...
        runtime 'commons-pool:commons-pool:1.4'
   }
   // ...
}  

to project file grails-app/conf/BuildConfig.groovy

grails-app / conf / BuildConfig.groovy项目文件

Read more in Grails: Dependency Resolution

阅读Grails中的更多内容:依赖解析