8

奇怪的是,我没有任何编译时错误,但是在运行应用程序时,我收到 Groovy 类的 NoClassDefFound 错误。

我正在使用带有 Groovy 2.7.0 插件的 Eclipse 3.6。我的机器上安装了 Groovy 1.8.5,并且 groovy-all.jar 在我的应用程序类路径中。

我可以在 WEB-INF/classes 文件夹中看到所有带有 .groovy 扩展名而不是 .class 扩展名的 groovy 文件。

我在这里缺少什么?

4

2 回答 2

11

两种可能:

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

  2. 或者您可能无意中为您的 groovy 文件所在的源文件夹启用了脚本文件夹。转到 Preferences -> Groovy -> Compiler 并查看有关 Groovy Script Folders 的部分。请注意,Groovy 脚本文件夹也可以基于每个项目进行配置,因此您可能还需要查看 Project -> Properties -> Groovy Compiler。

于 2012-05-08T16:05:22.347 回答
2

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

于 2012-05-08T16:08:00.590 回答