我正在尝试创建一个IndexWriter并编写一个Lucene。这是我的代码:
public class Indexer {
public static Analyzer _analyzer = new StandardAnalyzer(Lucene.Net.Util.LuceneVersion.LUCENE_48);
private void WriteToIndex() {
var config = new IndexWriterConfig(Lucene.Net.Util.LuceneVersion.LUCENE_48, _analyzer).SetUseCompoundFile(false);
using (IndexWriter indexWriter = new IndexWriter(LuceneDirectory, config)) <-- This throws an error!
{
// ....
}
}
}但是,在尝试创建IndexWriter时,我一直得到一个异常:
Exception thrown: 'Lucene.Net.Util.SetOnce`1.AlreadySetException' in Lucene.Net.dll
Additional information: The object cannot be set twice!我做错了什么?代码编译得很完美。我正在使用Lucene.NET,但我猜它也应该适用于Java。
发布于 2017-04-04 17:16:13
您得到这个异常是因为您正在重用一个IndexWriterConfig,它不打算在IndexWriter实例之间共享。相反,生成一个新的IndexWriterConfig,它应该工作得很好。
https://stackoverflow.com/questions/43212023
复制相似问题