在mac上为lucene设置java类路径

时间:2011-10-25 04:16:24

标签: java macos lucene classpath

我下载了lucene jar,然后通过我的.bash_profile将它们添加到CLASSPATH变量中,jars的路径在终端中正确显示。

export CLASSPATH=/Users/dk/lucene-3.4.0/lucene-core-3.4.0.jar
export CLASSPATH=$CLASSPATH:/Users/dk/lucene-3.4.0/contrib/demo/lucene-demo-3.4.0.jar

echo $CLASSPATH
/Users/dk/lucene-3.4.0/lucene-core-3.4.0.jar:/Users/dk/lucene-3.4.0/contrib/demo/lucene-demo-3.4.0.jar

然而,当我尝试运行演示时,java仍然向我抱怨:

java org.apache.lucene.demo.IndexFiles -docs .

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/lucene/demo/IndexFiles
Caused by: java.lang.ClassNotFoundException: org.apache.lucene.demo.IndexFiles
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
......

我能够按照这个确切的程序让lucene演示在ubuntu机器上运行,现在我只是希望它能够在我的mac上运行。似乎在stackoverflow上有类似的问题,但它们似乎都没有回答这个问题。

1 个答案:

答案 0 :(得分:0)

你确定你的路径正确吗?它对我来说很好。

.../lucene-3.4.0/tmp $ ls
lucene-core-3.4.0.jar   lucene-demo-3.4.0.jar
.../lucene-3.4.0/tmp $ export CLASSPATH=./lucene-core-3.4.0.jar:./lucene-demo-3.4.0.jar
.../lucene-3.4.0/tmp $ echo $CLASSPATH
./lucene-core-3.4.0.jar:./lucene-demo-3.4.0.jar
.../lucene-3.4.0/tmp $ java org.apache.lucene.demo.IndexFiles -docs .
Indexing to directory 'index'...
adding ./lucene-core-3.4.0.jar
adding ./lucene-demo-3.4.0.jar
1485 total milliseconds
.../lucene-3.4.0/tmp $