2

Solr 3.6.2 を自分のプロジェクトに統合しようとしています。Maven と Tomcat を使用してこれらを実行しました。

HttpSolrServer を使えば大丈夫なのですが、EmbeddedSolrServer に変えたらこんなエラーが出ます

エラー: org.apache.solr.core.CoreContainer - org.apache.solr.common.SolrException: 無効な luceneMatchVersion 'LUCENE_36'、有効な値は次のとおりです: [LUCENE_20、LUCENE_21、LUCENE_22、LUCENE_23、LUCENE_24、LUCENE_29、LUCENE_30、LUCENE_31、2 LUCENE_3 、LUCENE_33、LUCENE_34、LUCENE_35、LUCENE_CURRENT] または「VV」形式の文字列

このようなMavenの依存関係に追加しました

 <dependency>
           <artifactId>solr-solrj</artifactId>
           <groupId>org.apache.solr</groupId>
           <version>3.6.2</version>
           <type>jar</type>
           <scope>compile</scope>
  </dependency>
   <dependency>
           <artifactId>solr-core</artifactId>
           <groupId>org.apache.solr</groupId>
           <version>3.6.2</version>
           <type>jar</type>
           <scope>compile</scope>
    </dependency>

ビルド パスを確認してライブラリに移動すると、Maven がこれを自動的にダウンロードしたようです。

ルセンコア-3.5.0.jar

Solrconfig.xml で LUCENE_35 と LUCENE_CURRENT に変更しようとしましたが、別のエラーが発生します。

インストール ファイルに何かがハードコードされているようで、3.6.2 ではなく 3.5 が自動的にダウンロードされます。しかし、solr-core や lucene-misc、lucene-phonetic などの他のモジュールをチェックすると、まだ 3.6.2 ですが、lucene-core だけです。

助けてください。私はこれが初めてです。

リン

アップデート:

プロジェクトには、Solr フェーズに入る前に lucene-core-3.5.0.jar を提供する別の部分があります。したがって、依存関係の階層が競合し、代わりに 3.5.0 が使用されるため、自動的にダウンロードされます。

単純に 3.5.0 を除外するだけで、すべて問題ありません。

ありがとうございました!問題が解決しました!

4

1 に答える 1

2

「LUCENE_CURRENT」に変更solrconfig.xmlすることは、おそらく正しいことです。

于 2015-03-29T13:24:30.843 に答える