我需要为Grails设置Windows工作环境。我想将GGTS用作IDE,但在编译示例项目时遇到了一些错误。目前我使用的是jdk1.8.0_40和Grails 2.5.0。这导致了这个错误(但最终项目正在运行):
Groovy:Unexpected problem with AST transform: The Spock compiler
plugin cannot execute because Spock 1.0.0-groovy-2.4 is not compatible
with Groovy 2.3.10. For more information, see http://versioninfo.spockframework.org
最重要的是,有两个Java Exception Breakpoints被列为" unknown"。只有我能找到的版本支持信息是:
Java SDK 1.5+ for Grails 1.2 or greater
GGTS本身似乎没有运行最新的grails(3.0.1),因为我根本无法添加它(目录似乎不是grails安装)。
我应该使用Java 7吗?
答案 0 :(得分:13)
此问题与JDK 1.8或1.7无关,但它与GGTS IDE 3.6.4 Groovy编译器版本有关。由于错误澄清了Spock 1.0.0版本需要Groovy 2.4编译器。
GGTS 3.6.4.RELEASE-e4.4.2默认情况下,IDE附带Groovy 2.3.10编译器。
安装Groovy编译器2.4功能和"切换到2.4"将解决此问题。 请参阅:http://docs.codehaus.org/display/GROOVY/Compiler+Switching+within+Groovy-Eclipse
如果您无法从IDE Groovy Compiler首选项页面切换编译器,请按照说明从Eclipse外部执行切换:
(Grails 2.5.0使用Spock 1.0.0(以及内部Groovy 2.4.3,这就是为什么你的项目正在编译并且在Grails运行时环境正在接管时工作正常)
答案 1 :(得分:4)
作为上述答案的额外体验报告,从而提供了另一种解决方案变体:我必须使用http://dist.springsource.org/snapshot/GRECLIPSE/e4.4更新站点(与上面链接中提到的发行版本相反)来制作2.4编译器功能在更新管理器中可用。 安装后,编译器错误消失了。
答案 2 :(得分:0)
我注意到项目特定的groovy编译器是在新的grails项目的Groovy Compiler首选项页面中设置的。通过为“Groovy编译器”选择“我不关心”,它将默认为工作空间groovy编译器,这通常是正确的(对我来说它是版本2.4)。这对我有用,但经验可能会有所不同。