grails - 我该如何解决: “ClassDefFoundError: org/codehaus/groovy/grails/commons/ConfigurationHolder”?

标签 grails

我试图运行我的grails项目,该项目从2.3.5升级到2.4.4。
现在,在尝试运行它之后,出现以下错误:

|Running Grails application
context.GrailsContextLoaderListener Error initializing the application: org/codehaus/groovy/grails/commons/ConfigurationHolder
java.lang.NoClassDefFoundError: org/codehaus/groovy/grails/commons/ConfigurationHolder
    at grails.plugin.hibernate3.HibernatePluginSupport$__clinit__closure1.doCall(HibernatePluginSupport.groovy:129)
    at grails.spring.BeanBuilder.invokeBeanDefiningClosure(BeanBuilder.java:754)
    at grails.spring.BeanBuilder.beans(BeanBuilder.java:584)
    at grails.spring.BeanBuilder.invokeMethod(BeanBuilder.java:527)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.ClassNotFoundException: org.codehaus.groovy.grails.commons.ConfigurationHolder
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    ... 8 more
Error |
Forked Grails VM exited with error

最佳答案

根据Grail的迁移文档,看起来他们已经从2.4中删除了ConfigurationHolder。

您需要更新休眠插件。

从他们的文档:

Static Holder Classes The following deprecated classes have been removed from Grails 2.4.x:

org.codehaus.groovy.grails.commons.ApplicationHolder org.codehaus.groovy.grails.commons.ConfigurationHolder org.codehaus.groovy.grails.plugins.PluginManagerHolder org.codehaus.groovy.grails.web.context.ServletContextHolder org.codehaus.groovy.grails.compiler.support.GrailsResourceLoaderHolder If you or any plugins you have installed are using these classes you will get a compilation error. The problem can be rectified by updating to new plugins and using grails.util.Holders instead.

If your application uses the jquery plugin you will need to update to version 1.11.0.2 or later as previous versions of the plugin made use of the ApplicationHolder class. If your application uses the resources plugin you will need to update to version 1.2.7 or later as previous versions of the plugin made use of the ConfigurationHolder class.



迁移文档:http://grails.github.io/grails-doc/2.4.x/guide/upgradingFrom23.html

关于grails - 我该如何解决: “ClassDefFoundError: org/codehaus/groovy/grails/commons/ConfigurationHolder”?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29050378/

相关文章:

excel - Grails导出插件设置时区

grails - Grails等效于grails.plugin.location

java - grails 服务中的深度递归失败

grails - 如何使用Grails GORM进行多个字段匹配的左外部联接?

tomcat - 如何保护我的微服务,该服务只能从亚马逊的 api 网关或任何经过身份验证的应用程序访问

java - 如何保持 Java 属性文件可读

grails - 确定列表是否是另一个列表HQL的子集

grails - 无法使用Weceem插件运行应用

grails - Groovy/Grails 如何使构造函数私有(private) - 正确的方法

grails - 什么是 Grails 插件?安装插件是什么意思?