clojure-solrライブラリを1.3にアップグレードしようとしています(元々は書きませんでした。 fork)、apache-solr-3.5.0とやりとりしているときに問題が発生しています。ここではgithubの上の更新ライブラリです:Clojure/Solr:Clojureのorg.apache.solr.client.solrj.impl.CommonsHttpSolrServerを使用しようとすると例外が発生する
https://github.com/antler/clojure-solr
それは基本的には必要最小限のJavaクラスをインポートして、非常に単純な一つのファイルプロジェクトです。例には、このリリースのI CDに
http://www.fightrice.com/mirrors/apache//lucene/solr/3.5.0/
/及び
java -jar start.jar
を実行します。私はSolrの3.5.0リリース(これは一つのミラーである)がバンドルされていたSolrの例アプリに接続しようとしています
これは正常に動作するようです。その後、Clojureの-SolrのプロジェクトでREPLから(レインのDEPSを実行した後):
(use 'clojure-solr)
(with-connection (connect "http://127.0.0.1:8983/solr")
(add-document! {"id" "testdoc", "name" "A Test Document"})
(add-documents! [{"id" "testdoc.2", "name" "Another test"}
{"id" "testdoc.3", "name" "a final test"}])
(commit!)
(search "test")
(search "test" :rows 2))
これは、もともとライブラリに与えられた例からです。細かいランを接続しますが、以下の例外を除いて追加に失敗するコール:私はSolrのドキュメントとaddメソッドでチェック
IllegalArgumentException No matching field found: add
for class org.apache.solr.client.solrj.impl.CommonsHttpSolrServer
が間違いである:
http://lucene.apache.org/solr/api/org/apache/solr/client/solrj/impl/CommonsHttpSolrServer.html
私は何をしないのですここに?助けてくれてありがとう!