Eclipse在运行时无法将Groovy脚本编译为Java类

8
奇怪的是,我没有遇到编译时错误,但在运行应用程序时,我收到了Groovy类的NoClassDefFound错误。
我使用带有Groovy 2.7.0插件的Eclipse 3.6。我已经在我的机器上安装了Groovy 1.8.5,并且groovy-all.jar在我的应用程序类路径中。
我可以看到所有的Groovy文件都位于WEB-INF/classes文件夹中,扩展名为.groovy而不是.class。
我在这里错过了什么?

1
你是如何编译的?你是如何运行它的?你的类路径上有什么?你的 Jar 包里有什么? - Paul Cager
Eclipse的哪个版本?Groovy的哪个版本?Groovy插件是否最新?...叹气... - tim_yates
2个回答

11

有两种可能性:

  1. 您的项目不是Groovy项目,因此您的Groovy文件被视为资源(而不是源)。资源会复制到输出文件夹,而源会编译。请确保您的项目图标上有一个小的GR符号。

  2. 或者您可能无意中启用了脚本文件夹作为您的Groovy文件所在的源文件夹。转到“首选项”->“Groovy”->“编译器”,查看有关Groovy脚本文件夹的部分。请注意,Groovy脚本文件夹也可以按每个项目配置,因此您还需要查看“项目”->“属性”->“Groovy编译器”。


2

确保您使用 groovy 而不是 java 执行代码。否则,您将需要在类路径中链接 groovy.jar 文件。请参见此 讨论


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接