2

アプリを lucene 2.X から lucene 3.X に移植しています。以下は私の問題です。

これは 2.X では有効でしたが、3.5 ではエラーが発生します。

IndexReader reader = IndexReader.open("/home/path/to/my/dataDir");

2.X は文字列を受け入れましたが、3.5 は厳密に Directory オブジェクトを必要とします。Directory は抽象的であり、インスタンス化する唯一の方法は RAMDirectory() のようです。

これについてどうすればいいですか、またリーダーを目的のディレクトリに向けるにはどうすればよいですか?

4

2 に答える 2

3

Try to use DirectoryReader.open(FSDirectory .open(new File(indexFilePath))) as IndexReader.open method is deprecated for lucene 4 :)

于 2012-07-25T04:39:36.443 に答える
0

できました。私はちょうどこのようにそれをやった

IndexReader reader = IndexReader.open(new SimpleFSDirectory(new File("my/desired/path")));`

御時間ありがとうございます。

于 2012-06-07T09:38:39.787 に答える