Lucene库从2.0升级到3.6

Lucene库从2.0升级到3.6,lucene,Lucene,在我的应用程序中,我需要将lucene core jar从2.0升级到3.6,问题在于2.0 RAMDirectory类也用于读取和写入磁盘位置上的文件。但在3.6版本中,RAMDirectory类初始化方法签名被更改为不带参数。 要从磁盘上的std位置读取输入文件,我传递了FSDirectory.open(File)参数,但输出索引文件没有写入到我提供的位置 知道在将jar从2.0升级到更高版本时需要考虑什么吗 任何参考或经验都会非常有用 谢谢, Ashish这是RAMDirectory的预期

在我的应用程序中,我需要将lucene core jar从2.0升级到3.6,问题在于2.0 RAMDirectory类也用于读取和写入磁盘位置上的文件。但在3.6版本中,RAMDirectory类初始化方法签名被更改为不带参数。 要从磁盘上的std位置读取输入文件,我传递了FSDirectory.open(File)参数,但输出索引文件没有写入到我提供的位置

知道在将jar从2.0升级到更高版本时需要考虑什么吗

任何参考或经验都会非常有用

谢谢,
Ashish

这是
RAMDirectory
的预期行为。它在内存中生成传入的索引目录的完整副本。对内存中索引所做的更改不会更改存储在磁盘上的索引。除非我遗漏了什么,否则这一切都不会改变。如果希望对存储的索引进行更改,
RAMDirectory
实际上不是合适的类。您只需使用您创建的
FSDirectory

也许您的应用程序正在加载RAMDirectory,在内存中使用它,然后稍后将其写回磁盘