我编写了一个简单的Java程序来创建lucene索引,但是语法出现错误。
我的代码:
static final String INDEX_DIRECTORY = "/home/yuqing/Desktop/index";
Directory index = FSDirectory.open(new File(INDEX_DIRECTORY));
我收到以下错误,
open (java.nio.file.path) in FSDirectory cannot be applied to java.io.file
该FSDirectory.open
调用接受一个Path
参数,而不是参数File
(从Lucene
5.0版开始)。您可以查看有关路径类的Java教程,以获取有关其工作方式的信息。
因此,您的代码应如下所示:
static final String INDEX_DIRECTORY = "/home/yuqing/Desktop/index";
Directory index = FSDirectory.open(Paths.get(INDEX_DIRECTORY));
问题内容: 在索引方法中,我使用以下行: 但是,在Lucene 4.0中,不建议使用此构造函数,而应使用而不是。 但是问题在于它在构造函数中不被接受。 有没有办法在新的构造函数中将术语向量包含在Lucene 4.0的索引中? 谢谢 问题答案: 对于需要索引字段而没有术语向量的用户,TextField是一种便利类。如果需要术语向量,只需使用Field即可。它需要的代码几行,因为你需要创建一个实例的F
问题内容: Lucene是否提供增强新文档的方法? 例如,假设Lucene文档包含日期字段。是否有可能在用户不以任何方式更改其查询的情况下,以更高的分数展示最新的文档? 我不想诉诸粗略的“按日期排序”解决方案,因为它将完全取消评分算法。 问题答案: 将文档放入索引时,请使用Document.setBoost(float value)。 您可以不断地重新调整现有文档上的值,或者具有随日期增加的浮点值
问题内容: 我想在lucene项目中使用WikipediaTokenizer- http://lucene.apache.org/java/3_0_2/api/contrib- wikipedia/org/apache/lucene/wikipedia/analysis/WikipediaTokenizer.html 但我从未使用过Lucene。我只想将Wikipedia字符串转换为令牌列表。但是
我在使用Lucene.NET 3.0.3时遇到以下问题。 我的搜索查询如下所示: 手动生成的搜索查询:(+*test*+*und*+*produktivumgebung*) 解析的搜索查询:+(标题:*test*)+(标题:*und*)+(标题:*produktivumgebung*) 为什么我找不到搜索“test-und produktivumgebung”的文档?
Lucene++ 是 Java Lucene 搜索引擎的 C++ 移植版本。 包含组件: liblucene++ library liblucene++-contrib library lucene++-tester (unit tester) deletefiles (demo) indexfiles (demo) searchfiles (demo)
问题内容: 关于apache lucene所提供的热门荧光笔,我有两个问题: 请参阅此功能,您能否解释令牌流参数的使用。 我有几个包含多个字段的大型lucene文档,每个字段中都有一些字符串。现在,我找到了与特定查询最相关的文档。现在找到该文档,因为查询中的几个单词可能与文档中的单词匹配。我想找出查询中的哪些词造成了这种情况。因此,我计划使用Lucene Hit Highlighter。示例:如果