3

在命令 shelll 中执行 java 类时出现以下异常

Exception in thread "main" java.lang.NoClassDefFoundError: groovy/lang/GroovyObj
ect
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:14
1)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
        at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

因为代码不是我写的,而且我不熟悉 groovy,所以我很难调查问题出在哪里。请给我一个线索。

PS:我已将 groovy-all.jar 添加到我的类路径中。

4

1 回答 1

3

我遇到的一个问题是 Groovy 的版本不匹配。更具体地说,似乎我在 2.1.1 下运行了一个已编译的 groovy 类,而它在 1.8.6 下编译

将类路径中包含的库更改为 1.8.6 解决了我的问题。

于 2013-04-05T11:36:27.320 回答