Apache Lucene索引编写器

时间:2012-07-25 17:17:23

标签: apache lucene

我是apache lucene的新手。我开始使用lucene。我遇到了一个问题。我开始索引目录中的所有文件。我没有关闭索引编写者并试图在卢克打开。它提示错误“索引未关闭”。这里的问题是代码执行已经完成。如何解锁索引?如果我使用相同的目录实例化一个新的IndexWriter,它会覆盖现有的索引吗?

1 个答案:

答案 0 :(得分:1)

我也不是专家..

如果我是你,我会做以下事情......

1)将以下代码段添加到最后的代码中,这是必须的,不惜任何代价。

myIndexWriter.close(); 

2)手动删除现有目录,然后重新运行整个代码。

如果在不删除目录的情况下实例化新的IndexWriter,它会将文档添加到现有索引中。是的,它将导致重复的索引条目。

但是,从Lucene的角度来看,所有这些条目仍然是唯一的,即每个addDocument()在索引中创建一个新的条目,并带有一个新的唯一lucene-internal-doc-id。