私はインデクサーを作成するためにlucene 6.3.0を使用しています。あるフォルダからコレクションを読み取り、別のフォルダへのインデックスを作成します。これはうまくいきますが、私はマルチスレッドをしたい、つまり、2つのコレクション(c1とc2)が与えられ、2つのスレッドを実行し、それぞれが1つのコレクションと1つのインデックスフォルダで実行される。コレクションc1をフォルダi1に、スレッド2をコレクションc2のインデックスをフォルダi2に作成します。luceneによるマルチスレッド化IndexWriter
私はそれを管理するためのThreadPoolクラスを作成しましたが、私は取得しています:
例外スレッドで "プール-1-スレッド-2" org.apache.lucene.util.SetOnce $ AlreadySetException:オブジェクトは を2回設定できません!
それは
IndexWriterライター=新しいIndexWriter(ディレクトリ、indexWriterConfig)から来ています。
ただし、インデックスは作成されます。
なぜこの例外が発生し、どうやったらそれを避けるのですか?
あなたが正しいです、私はそれを変更し、それは正常に動作します。 – CodeSniffer