我一直在Windows上编程Java的年龄,只是移动到Mac。
我正在运行下面的命令,在PC上运行,但不是在Mac上,我做错了什么。
java -classpath ./lib.patches/*:./lib.core/*:./lib.custom/* test.Test
这给了我一个ClassNotFound,但testing。testing是在path中的一个jar子。
感谢所有帮助。
好的,我已经进一步debugging,当我运行这个命令
java -cp . test.Test
我已经解决了!
该脚本是从个人电脑复制,并有错误的回报结束行。
这有创造一个ClassNotFound奇怪的结果。
从命令行它的作品,但从一个脚本,它会抛出ClassNotFound – 必须是Mac问题…
验证@Dave牛顿的结果,使用
$ java -version java版本“1.6.0_26”
与ThermometerDemo
,这个命令工作:
$ java -cp / opt / jfreechart / *:build / classes chart.ThermometerDemo
为我工作得很好。 (逃避,以显示它与shell globbing无关,但它可以工作。)
在目录1中使用lucene-core,在目录2中使用lucene演示,或者同时在一个目录中使用:
...lucene/lucene-3.4.0/tmp $ echo $CLASSPATH ...lucene/lucene-3.4.0/tmp $ java -cp ./1/\*:./2/\* org.apache.lucene.demo.IndexFiles -docs . Indexing to directory 'index'... adding ./1/lucene-core-3.4.0.jar adding ./2/lucene-demo-3.4.0.jar adding ./index/_0.fdt adding ./index/_0.fdx adding ./index/write.lock 1605 total milliseconds
如果您还需要基于当前目录的类文件,则应该明确地添加.
类路径的路径。
尝试
java -cp './lib.patches/*:./lib.core/*:./lib.custom/*' test.Test
代替