当我尝试在 IntelliJ IDEA 13 中运行已编译的 Groovy 代码时,我不断收到此错误:
/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/bin/java -Didea.launcher.port=7539 "-Didea.launcher.bin.path=/Applications/IntelliJ IDEA 13.app/bin" -Dfile.encoding=UTF-8 -classpath "/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/lib/javafx-doclet.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/lib/tools.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/htmlconverter.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Users/Insanity/Documents/Programming/Programming Languages/Groovy/Asteroids!/out/production/Asteroids!:/Users/Insanity/Desktop/:usr:local/opt/groovy/libexec/lib/ant-1.9.2.jar:local/opt/groovy/libexec/lib/ant-antlr-1.9.2.jar:local/opt/groovy/libexec/lib/ant-junit-1.9.2.jar:local/opt/groovy/libexec/lib/ant-launcher-1.9.2.jar:local/opt/groovy/libexec/lib/antlr-2.7.7.jar:local/opt/groovy/libexec/lib/asm-4.1.jar:local/opt/groovy/libexec/lib/asm-analysis-4.1.jar:local/opt/groovy/libexec/lib/asm-commons-4.1.jar:local/opt/groovy/libexec/lib/asm-tree-4.1.jar:local/opt/groovy/libexec/lib/asm-util-4.1.jar:local/opt/groovy/libexec/lib/bsf-2.4.0.jar:local/opt/groovy/libexec/lib/commons-cli-1.2.jar:local/opt/groovy/libexec/lib/commons-logging-1.1.1.jar:local/opt/groovy/libexec/lib/gpars-1.1.0.jar:local/opt/groovy/libexec/lib/groovy-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-ant-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-bsf-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-console-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-docgenerator-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-groovydoc-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-groovysh-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-jmx-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-json-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-jsr223-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-servlet-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-sql-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-swing-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-templates-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-test-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-testng-2.2.2.jar:local/opt/groovy/libexec/lib/groovy-xml-2.2.2.jar:local/opt/groovy/libexec/lib/hamcrest-core-1.3.jar:local/opt/groovy/libexec/lib/ivy-2.3.0.jar:local/opt/groovy/libexec/lib/jansi-1.10.jar:local/opt/groovy/libexec/lib/jcommander-1.27.jar:local/opt/groovy/libexec/lib/jline-2.10.jar:local/opt/groovy/libexec/lib/jsp-api-2.0.jar:local/opt/groovy/libexec/lib/jsr166y-1.7.0.jar:local/opt/groovy/libexec/lib/junit-4.11.jar:local/opt/groovy/libexec/lib/multiverse-core-0.7.0.jar:local/opt/groovy/libexec/lib/qdox-1.12.1.jar:local/opt/groovy/libexec/lib/servlet-api-2.4.jar:local/opt/groovy/libexec/lib/testng-6.8.5.jar:local/opt/groovy/libexec/lib/xmlpull-1.1.3.1.jar:local/opt/groovy/libexec/lib/xstream-1.4.4.jar:/Users/Insanity/Documents/Programming/Programming Languages/Java/Libraries/Java Game Libraries/slick/lib/slick.jar:/Users/Insanity/Documents/Programming/Programming Languages/Java/Libraries/Java Game Libraries/lwjgl-2.9.1/jar/lwjgl.jar:/Applications/IntelliJ IDEA 13.app/lib/idea_rt.jar" com.intellij.rt.execution.application.AppMain com.insanity.asteroids.Init
Exception in thread "main" java.lang.NoClassDefFoundError: groovy/lang/GroovyObject
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:800)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:190)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:113)
Caused by: java.lang.ClassNotFoundException: groovy.lang.GroovyObject
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 15 more
Process finished with exit code 1
从表面上看,没有找到 Groovy 库或其他东西。
最佳答案
问题是我使用了指向 /usr/local
的符号链接(symbolic link)。通过将类路径更改为使用 /usr/local
的直接路径而不是符号链接(symbolic link),已修复该错误。
tl;dr:不要使用符号链接(symbolic link)在 IntelliJ 中设置类路径。
关于java - 在 IntelliJ IDEA 13 中运行编译的 Groovy 代码时出现运行时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22263067/