java - Apache Lucene 6.2 标准分析器版本

标签 java lucene

我是 Apache Lucene 的新手。我目前使用的是最新版本:6.2.1

基于他们的官方文档:http://lucene.apache.org/core/6_2_1/core/org/apache/lucene/analysis/package-summary.html

 Version matchVersion = Version.LUCENE_6_2_1;
 Analyzer analyzer = new StandardAnalyzer(matchVersion);

不起作用。它告诉我没有接收 Version 参数的 StandardAnalyzer 构造函数;

我做了这样的事情

 Version matchVersion = Version.LUCENE_6_2_1;
 Analyzer analyzer = new StandardAnalyzer();
 analyzer.setVersion(matchVersion);

这是正确的方法并且文档较旧吗?或者除了 lucene-core 之外我还需要添加一些额外的库?

最佳答案

是的,Version 参数在 5.0 版本中已被删除。使用 setVersion 设置它是正确的。但是,应该注意的是,设置版本实际上不会执行任何操作。 StandardAnalyzer 不使用它。

如果您想使用旧的 StandardAnalyzer 逻辑(在版本 3.1 及之前版本中使用),您应该使用 ClassicAnalyzer相反。

关于java - Apache Lucene 6.2 标准分析器版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40052828/

相关文章:

java - Java输出文件中XML属性的控制顺序

java - 如何仅标记 Lucene 中的某些单词

java - KeywordAnalyzer 用于处理带有变音符号的单词的不同拼写

java - 文档获取添加/更新/删除时 Lucene 索引文件的更改?

Lucene 4.4。如何获得所有索引的词频?

lucene - SOLR:NGramFilterFactory 的问题

java - 哪里可以免费找到 Encog 2 或用 Java 中的 Encog 3 进行神经网络编程,第二版

java - 如何使用 spring-cloud-netflix 和 feign 编写集成测试

java - 为什么设置变量等于数组索引不能以预期的方式工作?

java - 文档中的代码 fragment 错误 - 无法引用非最终变量