0

Rails2.3.8にgeminstallredisとgeminstallresqueを使用してredisとresqueをインストールしました。resqueとredisのバージョンはそれぞれ1.18.0と2.2.2です。私は労働者を始めました

RAILS_ENV=development resque-web config/initializers/resque.rb

また、config/redis.ymlファイルの構成を次のように行いました。

defaults: &defaults
  host: localhost
  port: 6379
  ...

そしてとconfig/initializers/resque.rbして:

config = YAML::load(File.open("#{Rails.root}/config/redis.yml"))[Rails.env]
Resque.redis = Redis.new(:host => config['host'], :port => config['port'])

しかし、私がresque-webを開始したいとき

RAILS_ENV=development resque-web config/initializers/resque.rb

このエラーが発生します

./config/initializers/../../vendors/rails/railties/lib/initializer.rb:27:in'require_frameworks':[]のラック(〜> 1.1.0、ランタイム)をアクティブ化できません["vegas-0.1.11"、"resque-1.18.0"]のアクティブ化されたラック-1.4.1

私はそれが依存関係としてresque 1.18.0必要でありsinatra 1.3.3、それが再びrack >= 1.3.0その依存関係として必要であることを知りました。ただし、foractionpackの場合、 wantedrails 2.3.8のバージョンはです。誰かがこの問題を解決する方法を教えてもらえますか?rack1.1.0

4

1 に答える 1

0

のバージョンを使用するresque必要があります。そのバージョンには、と互換性sinatraのあるバージョンが必要です。 rackrails 2.3.8

これは手動で理解するか、次のいずれかのオプションを試すことができます。

  1. RubyGems依存関係APIを使用します(http://guides.rubygems.org/rubygems-org-api/)
  2. Rails2.3.8bundlerアプリケーションに後付けする
于 2012-10-31T11:55:08.857 に答える