3

こんにちは、黒点はjrubyで使用できます。また、ここに私のアプリの詳細があります

jruby-1.6.1
rails 3.0.7 

when i install all the gems and run rake sunspot:solr:start it gives me the following error 

Gem::LoadError: Could not find RubyGem sunspot (>= 0)

  report_activate_error at /Users/dpatel/.rvm/rubies/jruby-1.6.1/lib/ruby/site_ruby/1.8/rubygems.rb:861
               activate at /Users/dpatel/.rvm/rubies/jruby-1.6.1/lib/ruby/site_ruby/1.8/rubygems.rb:255
                    gem at /Users/dpatel/.rvm/rubies/jruby-1.6.1/lib/ruby/site_ruby/1.8/rubygems.rb:1215
                 (root) at /Users/dpatel/.rvm/gems/jruby-1.6.1@solr/bin/sunspot-solr:18

ただし、rake sunspot:solr:runを実行すると、正常に動作します。

また、Model.searchを使用して検索すると正常に機能しますが、ブラウザーでsolr webappを起動して何かを検索すると、機能しません。

黒点に新しく、何が起こっているのか誰か教えてもらえますか?

-ありがとう

4

3 に答える 3

2

こんにちは、ちょっとわかりました。私は jruby を使用していますが、jruby では fork は許可されていません。rake sunspot:solr:start は fork を試行し、エラーをスローしましたが、rake sunspot:solr:run はフォアグラウンドで solr を開始し、正常に動作します。少し痛いですが、すべて順調です:-)

-D

于 2011-05-20T20:59:46.687 に答える
1

フォークの問題についてはすでに理解したので、開発とテストのために単一のシェルにとどまりたい場合は、これらのエイリアスが特定の Rails 環境で sunspot を実行し、完了時にそのプロセスを見つけて強制終了するのに特に役立つことがわかりました。

デフォルトのポートをそのまま使用する場合:

alias sunspot_run_test="RAILS_ENV=test sunspot-solr run &"
alias sunspot_kill_test="fuser -n tcp 8982 -k"
alias sunspot_run_dev="RAILS_ENV=test sunspot-solr run &"
alias sunspot_kill_dev="fuser -n tcp 8982 -k

ポートを変更する場合は、自動生成された sunspot.yml を変更するか、config>initializers に sunspot.rb を配置する必要があります。実行エイリアスの & の前に -p{$port_num} を追加して、明示的なポート番号を変更できます。 kill エイリアスの {$port_num} へ。

Vlad が述べたように、あなたの説明からブラウザで何が起こっているのかを知るのは難しいです。sunspot を初めて使用する場合、データベース内の何かを CRUD しようとする前に、開発環境でインスタンスを実行する必要がある (sunspot_run_dev エイリアスを使用する) 必要があります。そうしないと、接続拒否エラーが発生します。

sunspotを必要とするコマンドをラップする関数のトラブルシューティングについては、bash 関数で認識されない bash エイリアス: sunspot_rails、jruby、rspecを参照してください。

于 2011-12-08T15:26:13.433 に答える
0

レーキ問題の場合:

gem install sunspot -v 1.2.rc4

「ブラウザで動作しない」について: 動作しないとはどういう意味ですか?

  • 結果が返されない場合:

スクリプト/コンソールで手動で行ったSolrリクエストとサーバーによって行われたリクエストを比較することで、デバッグできます。デフォルトでは、sunspot gem はリクエストを「logs/sunspot-solr-development.log」に記録します

  • エラー(どれ?)
于 2011-05-18T17:22:17.007 に答える