0
我正在使用Hibernate Search和Lucene 3.5並試圖實現「你的意思是?」拼寫檢查搜索。我想使用索引作爲字典。我遇到的問題是indexDirectory的文檔與當前的方法簽名不匹配,我找不到任何有關如何從任何其他來源實現的細節。任何人都可以將我指向正確的方向嗎?以下是我從方法簽名本身解密的內容,但它只是導致鎖定異常。Hibernate-Search和Lucene 3.5 SpellChecker
Directory directory = FSDirectory.open(FileUtils.toFile(new URL("file:lucene/indexes/")));
IndexWriterConfig indexWriterConfig = new IndexWriterConfig(Version.LUCENE_35, new StandardAnalyzer(Version.LUCENE_35));
IndexWriter indexWriter = new IndexWriter(directory, indexWriterConfig);
IndexReader indexReader = IndexReader.open(indexWriter, false);
this.spellChecker = new SpellChecker(directory);
this.spellChecker.indexDictionary(new LuceneDictionary(indexReader, "favorite"), indexWriterConfig, true);
我認爲問題是一次打開多個IndexWriters? – femtoRgon
正確。首先打開讀者解決了這個問題,因爲它沒有獲得鎖定。 – Doug