Java 如何删除lucene目录以及不同的段文件

Java 如何删除lucene目录以及不同的段文件,java,file-io,lucene,Java,File Io,Lucene,使用FSDirectory构建lucene索引,以便可以多次使用。。所以,当一个新的批处理运行时,它需要被删除,这样lucene创建的所有不同的文件都会从硬盘上删除 IndexWriter.deleteAll删除所有文档,但仍无法删除某些分段文件。请让我知道如何删除lucene目录中的段文件 不同的段文件是 G.gen 第2部分 等等。Lucene保留段信息,以便能够保留关于新段的一些假设,即“计数器”值永远不会低于任何以前的段。删除它似乎毫无意义,如果您真的想重用该位置,请将该索引作为一个整体

使用FSDirectory构建lucene索引,以便可以多次使用。。所以,当一个新的批处理运行时,它需要被删除,这样lucene创建的所有不同的文件都会从硬盘上删除

IndexWriter.deleteAll删除所有文档,但仍无法删除某些分段文件。请让我知道如何删除lucene目录中的段文件

不同的段文件是 G.gen 第2部分
等等。

Lucene保留段信息,以便能够保留关于新段的一些假设,即“计数器”值永远不会低于任何以前的段。删除它似乎毫无意义,如果您真的想重用该位置,请将该索引作为一个整体删除,并在同一位置上创建一个新索引


从外部删除Lucene的文件会产生问题。

为什么不直接将一个java.io.File放到索引目录中并调用delete?调用IndexWriter可以配置为创建索引目录(如果尚未存在)。这将删除不是由lucene创建的任何其他文件。应该有办法在lucene中删除由lucene创建的文件。将文件放在与lucene相同的目录中是个坏主意。我同意这是个坏主意。但是lucene还需要一种方法来删除它创建的所有文件。因此,我们正在检查一种删除在创建索引时创建的段文件的方法。