我是Apache lucene的新手,我正在尝试使用4.7.0构建索引。 我能够将文档(这些是阿拉伯文档)编入索引,但是我在删除文档时遇到了问题。我用来删除文档的代码如下。
public void deleteFile(String filePath) {
System.out.println("Reached at deleting a file" );
try {
Term term = new Term("path", filePath);
writer.deleteDocuments(term);
writer.commit();
} catch (IOException e) {
System.out.println(" caught a " + e.getClass() + "\n with message: " + e.getMessage());
}
}
其中“path”是保存文件夹文件夹中文件路径的字段。
以下是我如何索引路径字段
doc.add(new StringField("path", file.getPath(), Field.Store.YES));
当我尝试删除使用上述方法索引的任何文档时,它不起作用,我仍然可以通过使用Luke看到删除的文档仍然是索引的一部分。有人请告诉我我是什么做错了?