将自定义分析器添加到Luke

时间:2012-06-25 13:25:11

标签: java lucene luke

这个问题已经在Stack Overflow上被问到here,BTW即使在阅读了提供的答案之后,我也无法添加 MyOwnAnalyzer ,这样我就可以直接从{{ 3}}

请有人可以帮助我做正确的方法,这是怎样做的,以及 MyOwnAnalyzer 可以直接从Luke使用?

我可以这样做(它不起作用,可能是我包含的jar不完整吗?):

java -cp .;d:\java\mylibs\MyOwnAnalyzer.jar -jar lukeall-3.5.0.jar

MyOwnAnalyzer.jar 是从Eclipse构建的,并在子目录 com.MyCompany <中包含: MyOwnAnalyzer.java,MyOwnTokenizer.java和MyOwnToken.java / em> ... Eclipse为我添加了 META-INF manifest.mf

使用命令行添加classpath和MyOwnAnalyzer.jar时可能错了?

或者我必须从源代码构建Luke,包括MyOwnAnalyzer在其目录中的某个地方吗?

或者是否有其他东西可以包含/写入,以便我的分析仪可以从Luke使用和导入? (看起来有一种机制可以检测子类Analyzer - MyOwnAnalyzer已经被声明为“extends Analyzer”的所有类)

顺便说一句,即使它不是真的相同的问题,但仍然在使用来自Luke的自定义分析器的相同主题... si我在使用选项卡分析工具时遇到错误我得到{ {1}},这个lib包含在一个jar中,我在其中包含一个main进行样本分析以进行检查,单独使用它时一切正常。如果我按照JPountz的说法使用它,来自Luke,我可以从所有Luke选项卡中看到MyOwnAnalyzer,但它不起作用!

来自Luke代码源的

,我认为抛出异常的是位于方法Luke内的某个位置。

注意:对Error analyzing:com/google/common/io/CharStreams的调用是将CharStreams.toString(input);输入转换为Reader内的字符串。

1 个答案:

答案 0 :(得分:4)

当使用-jar选项时,Java会忽略-cp选项。你需要以这种方式运行Luke:

java -cp lukeall-3.5.0.jar;MyOwnAnalyzer.jar org.getopt.luke.Luke