Grails 2.1.0 是不是需要 Groovy 1.8?

Posted

技术标签:

【中文标题】Grails 2.1.0 是不是需要 Groovy 1.8?【英文标题】:Does Grails 2.1.0 Require Groovy 1.8?Grails 2.1.0 是否需要 Groovy 1.8? 【发布时间】:2012-12-19 16:20:47 【问题描述】:

我最近将 Grails 应用程序更新到 2.1.0,但是当我 war 项目时,我收到以下错误:

java.lang.NoClassDefFoundError: org/codehaus/groovy/transform/powerassert/ValueRecorder

Groovy 版本 1.7.5 Grails 2.1.0 版

这两个版本兼容吗?

【问题讨论】:

【参考方案1】:

没有。 Grails 1.3.x 使用 Groovy 1.7,Grails 2.0.x 和 2.1.x 使用 Groovy 1.8,Grails 2.2 使用 Groovy 2.0,Grails 2.3 将使用 Groovy 2.1。您可能应该做一个grails dependency-report 来查看Groovy 1.7 的作用,并在您的BuildConfig 依赖声明中添加适当的排除项。

【讨论】:

所以本质上,在本地机器上安装什么版本的 Groovy 并不重要,对吗? @JohnGiotta 你不需要单独的 Groovy 安装,Grails 捆绑了自己的 Groovy jar,并不关心其他地方安装的任何东西。 好吧,我就是这么想的。我尝试用 Google 搜索我的问题,但只找到了与我遇到的相同问题的插件。谢谢! @JohnGiotta 请注意,IDE 有时会混淆问题,例如Eclipse Groovy 工具有自己的 groovy JAR,与 Grails 的 JAR 分开,您必须确保 Eclipse 配置的 Groovy 版本与 Grails 应用程序期望的版本相匹配(至少在 1.7 与 1.8 级别,点发布不是这样至关重要)。 嗯,这个错误只发生在Bamboo的战争过程中。 --stacktrace 只是抛出 ClassNotFoundException... 难以调试

以上是关于Grails 2.1.0 是不是需要 Groovy 1.8?的主要内容,如果未能解决你的问题,请参考以下文章

Groovy:使用 Grails 和 Spring 安全核心插件时出现意外令牌

Grails:在普通的 groovy 类中获取数据源

Grails 2.2.1 无法识别从 BuildConfig.groovy 安装的“发布”插件

如何在 groovy/grails 中为嵌套对象创建标准?

Grails:拆分包含管道的字符串

Groovy Grails 处理控制器参数