基于this tutorial我尝试创建自己的基本Lucene搜索应用程序。您也可以直接使用given example,这与我的问题无关。
所以我的文件B.java
以:
import org.apache.lucene.analysis.standard.StandardAnalyzer;
虽然我在javac
,
javac -cp ~/lucene-4.10.2/core/lucene-core-4.10.2.jar
:~/lucene-4.10.2/analysis/common/lucene-analyzers-common-4.10.2.jar
B.java
我得到这样的错误:
B.java:1: error: package org.apache.lucene.analysis.standard does not exist
我使用复数,因为对于.class
在给定JAR中的其他包(使用unzip -l
检查)也会出现这种情况。我假设如果我能找到解决方案,它也应该适用于其他情况......我在这里错过了什么?
答案 0 :(得分:0)
好的,我似乎找到了答案。
出于某种原因,当包含扩展到我的~
目录的$HOME
时,这会使javac
无法找到正确的路径:
javac -cp ~/lucene-4.10.2/core/lucene-core-4.10.2.jar
:~/lucene-4.10.2/analysis/common/lucene-analyzers-common-4.10.2.jar
B.java
我做了一个指向该目录的软链接:
$ ln -s ~/lucene-4.10.2/ lucenepath
然后使用符号链接,它起作用了:
javac -cp lucenepath/core/lucene-core-4.10.2.jar
:lucenepath/analysis/common/lucene-analyzers-common-4.10.2.jar
B.java
不确定为什么会这样。