我正在尝试使用groovyc,但有些事情是不对的:
>echo println("Hello world") > test.groovy
>groovy test.groovy
Hello world
>groovyc test.groovy
>java -cp C:\utils\groovy-1.8.1\embeddable\groovy-all-1.8.1.jar test
Error: Could not find or load main class test
>dir test.class
...
11/10/2011 02:54 PM 7,104 test.class
我错过了什么?
答案 0 :(得分:17)
当您使用-cp
开关指定类路径时,其默认值(当前目录)将被覆盖,因此JVM无法找到您的类。
将当前目录添加到类路径中,一切正常:
>java -cp C:\utils\groovy-1.8.1\embeddable\groovy-all-1.8.1.jar;. test
Hello, world
答案 1 :(得分:8)
确保如果您使用的是基于unix的系统(Linux或Mac),那么对于类路径条目分隔符,您需要使用冒号而不是分号:
>java -cp /path/to/groovy/embeddable/groovy-all-1.8.1.jar:. test
Hello, world
答案 2 :(得分:5)
我不确定这些片段是否有效,因为错过了使用main方法的课程。 正确的命令行是:
java -cp /path/to/groovy/embeddable/groovy-all-1.8.1.jar groovy.lang.GroovyShell test.groovy