2013-07-19 15 views
16

私はRails 4.0.0アプリケーションを持っています。バンドルインストールコマンドを実行するときに問題はありません。これは私のGemFileです。はすでにbcrypt-ruby(〜3.0.0)を有効にできません。すでにbcrypt-ruby-3.1.1を有効にしています。すべての依存関係がGemfileに追加されていることを確認してください

source 'https://rubygems.org' 

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails' 
gem 'rails', '4.0.0' 

gem 'mysql2' 

# Use SCSS for stylesheets 
gem 'sass-rails', '~> 4.0.0.rc2' 

# Use Uglifier as compressor for JavaScript assets 
gem 'uglifier', '>= 1.3.0' 

# Use CoffeeScript for .js.coffee assets and views 
gem 'coffee-rails', '~> 4.0.0' 

# See https://github.com/sstephenson/execjs#readme for more supported runtimes 
# gem 'therubyracer', platforms: :ruby 

# Use jquery as the JavaScript library 
gem 'jquery-rails' 

# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks 
gem 'turbolinks' 

# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder 
gem 'jbuilder', '~> 1.2' 

group :doc do 
    # bundle exec rake doc:rails generates the API under doc/api. 
    gem 'sdoc', require: false 
end 

# Use ActiveModel has_secure_password 
# gem 'bcrypt-ruby', '~> 3.0.0' 

# Use unicorn as the app server 
# gem 'unicorn' 

# Use Capistrano for deployment 
# gem 'capistrano', group: :development 

# Use debugger 
# gem 'debugger', group: [:development, :test] 

gem 'pry' 
gem 'devise', git: "https://github.com/plataformatec/devise.git", branch: 'rails4' 
gem 'bcrypt-ruby' 
gem 'simple_form' 
gem "therubyracer" 
gem "less-rails" #Sprockets (what Rails 3.1 uses for its asset pipeline) supports LESS 
gem "twitter-bootstrap-rails" 
gem 'simple_form' 
gem 'jquery-ui-rails' 

group :development, :test do 
    gem 'rspec-rails', '~> 2.0' 
    gem 'cucumber-rails', :git => "https://github.com/cucumber/cucumber-rails.git", :branch => "master_rails4_test", :require => false 
    gem 'database_cleaner' 
    gem 'factory_girl' 
    gem "factory_girl_rails", "~> 4.0" 
    gem "database_cleaner" 
    gem "awesome_print" 
end 

は、これは私のGemfile.lockある

GIT 
    remote: https://github.com/cucumber/cucumber-rails.git 
    revision: 5fa9da37ab05213d2f46029ea476e09104ffe281 
    branch: master_rails4_test 
    specs: 
    cucumber-rails (1.3.1) 
     capybara (>= 1.1.2) 
     cucumber (>= 1.2.0) 
     nokogiri (>= 1.5.0) 
     rails (>= 3.0.0) 

GIT 
    remote: https://github.com/plataformatec/devise.git 
    revision: 6b5988d756d780903bf8c9ccb3e2b3b724ccebe8 
    branch: rails4 
    specs: 
    devise (2.2.4) 
     bcrypt-ruby (~> 3.0) 
     orm_adapter (~> 0.1) 
     railties (>= 3.2.6, < 5) 
     warden (~> 1.2.1) 

GEM 
    remote: https://rubygems.org/ 
    specs: 
    actionmailer (4.0.0) 
     actionpack (= 4.0.0) 
     mail (~> 2.5.3) 
    actionpack (4.0.0) 
     activesupport (= 4.0.0) 
     builder (~> 3.1.0) 
     erubis (~> 2.7.0) 
     rack (~> 1.5.2) 
     rack-test (~> 0.6.2) 
    activemodel (4.0.0) 
     activesupport (= 4.0.0) 
     builder (~> 3.1.0) 
    activerecord (4.0.0) 
     activemodel (= 4.0.0) 
     activerecord-deprecated_finders (~> 1.0.2) 
     activesupport (= 4.0.0) 
     arel (~> 4.0.0) 
    activerecord-deprecated_finders (1.0.3) 
    activesupport (4.0.0) 
     i18n (~> 0.6, >= 0.6.4) 
     minitest (~> 4.2) 
     multi_json (~> 1.3) 
     thread_safe (~> 0.1) 
     tzinfo (~> 0.3.37) 
    arel (4.0.0) 
    atomic (1.1.10) 
    awesome_print (1.1.0) 
    bcrypt-ruby (3.1.1) 
    builder (3.1.4) 
    capybara (2.1.0) 
     mime-types (>= 1.16) 
     nokogiri (>= 1.3.3) 
     rack (>= 1.0.0) 
     rack-test (>= 0.5.4) 
     xpath (~> 2.0) 
    coderay (1.0.9) 
    coffee-rails (4.0.0) 
     coffee-script (>= 2.2.0) 
     railties (>= 4.0.0.beta, < 5.0) 
    coffee-script (2.2.0) 
     coffee-script-source 
     execjs 
    coffee-script-source (1.6.3) 
    commonjs (0.2.6) 
    cucumber (1.3.4) 
     builder (>= 2.1.2) 
     diff-lcs (>= 1.1.3) 
     gherkin (~> 2.12.0) 
     multi_json (~> 1.7.5) 
     multi_test (~> 0.0.1) 
    database_cleaner (1.0.1) 
    diff-lcs (1.2.4) 
    erubis (2.7.0) 
    execjs (1.4.0) 
     multi_json (~> 1.0) 
    factory_girl (4.2.0) 
     activesupport (>= 3.0.0) 
    factory_girl_rails (4.2.1) 
     factory_girl (~> 4.2.0) 
     railties (>= 3.0.0) 
    gherkin (2.12.0) 
     multi_json (~> 1.3) 
    hike (1.2.3) 
    i18n (0.6.4) 
    jbuilder (1.4.2) 
     activesupport (>= 3.0.0) 
     multi_json (>= 1.2.0) 
    jquery-rails (3.0.4) 
     railties (>= 3.0, < 5.0) 
     thor (>= 0.14, < 2.0) 
    jquery-ui-rails (4.0.3) 
     jquery-rails 
     railties (>= 3.1.0) 
    json (1.8.0) 
    less (2.3.2) 
     commonjs (~> 0.2.6) 
    less-rails (2.3.3) 
     actionpack (>= 3.1) 
     less (~> 2.3.1) 
    libv8 (3.11.8.17) 
    mail (2.5.4) 
     mime-types (~> 1.16) 
     treetop (~> 1.4.8) 
    method_source (0.8.1) 
    mime-types (1.23) 
    mini_portile (0.5.1) 
    minitest (4.7.5) 
    multi_json (1.7.7) 
    multi_test (0.0.1) 
    mysql2 (0.3.13) 
    nokogiri (1.6.0) 
     mini_portile (~> 0.5.0) 
    orm_adapter (0.4.0) 
    polyglot (0.3.3) 
    pry (0.9.12.2) 
     coderay (~> 1.0.5) 
     method_source (~> 0.8) 
     slop (~> 3.4) 
    rack (1.5.2) 
    rack-test (0.6.2) 
     rack (>= 1.0) 
    rails (4.0.0) 
     actionmailer (= 4.0.0) 
     actionpack (= 4.0.0) 
     activerecord (= 4.0.0) 
     activesupport (= 4.0.0) 
     bundler (>= 1.3.0, < 2.0) 
     railties (= 4.0.0) 
     sprockets-rails (~> 2.0.0) 
    railties (4.0.0) 
     actionpack (= 4.0.0) 
     activesupport (= 4.0.0) 
     rake (>= 0.8.7) 
     thor (>= 0.18.1, < 2.0) 
    rake (10.1.0) 
    rdoc (3.12.2) 
     json (~> 1.4) 
    ref (1.0.5) 
    rspec-core (2.14.3) 
    rspec-expectations (2.14.0) 
     diff-lcs (>= 1.1.3, < 2.0) 
    rspec-mocks (2.14.1) 
    rspec-rails (2.14.0) 
     actionpack (>= 3.0) 
     activesupport (>= 3.0) 
     railties (>= 3.0) 
     rspec-core (~> 2.14.0) 
     rspec-expectations (~> 2.14.0) 
     rspec-mocks (~> 2.14.0) 
    sass (3.2.9) 
    sass-rails (4.0.0) 
     railties (>= 4.0.0.beta, < 5.0) 
     sass (>= 3.1.10) 
     sprockets-rails (~> 2.0.0) 
    sdoc (0.3.20) 
     json (>= 1.1.3) 
     rdoc (~> 3.10) 
    simple_form (1.4.1) 
    slop (3.4.5) 
    sprockets (2.10.0) 
     hike (~> 1.2) 
     multi_json (~> 1.0) 
     rack (~> 1.0) 
     tilt (~> 1.1, != 1.3.0) 
    sprockets-rails (2.0.0) 
     actionpack (>= 3.0) 
     activesupport (>= 3.0) 
     sprockets (~> 2.8) 
    therubyracer (0.11.4) 
     libv8 (~> 3.11.8.12) 
     ref 
    thor (0.18.1) 
    thread_safe (0.1.0) 
     atomic 
    tilt (1.4.1) 
    treetop (1.4.14) 
     polyglot 
     polyglot (>= 0.3.1) 
    turbolinks (1.3.0) 
     coffee-rails 
    twitter-bootstrap-rails (2.2.7) 
     actionpack (>= 3.1) 
     execjs 
     rails (>= 3.1) 
     railties (>= 3.1) 
    tzinfo (0.3.37) 
    uglifier (2.1.2) 
     execjs (>= 0.3.0) 
     multi_json (~> 1.0, >= 1.0.2) 
    warden (1.2.3) 
     rack (>= 1.0) 
    xpath (2.0.0) 
     nokogiri (~> 1.3) 

PLATFORMS 
    ruby 

DEPENDENCIES 
    awesome_print 
    bcrypt-ruby 
    coffee-rails (~> 4.0.0) 
    cucumber-rails! 
    database_cleaner 
    devise! 
    factory_girl 
    factory_girl_rails (~> 4.0) 
    jbuilder (~> 1.2) 
    jquery-rails 
    jquery-ui-rails 
    less-rails 
    mysql2 
    pry 
    rails (= 4.0.0) 
    rspec-rails (~> 2.0) 
    sass-rails (~> 4.0.0.rc2) 
    sdoc 
    simple_form 
    therubyracer 
    turbolinks 
    twitter-bootstrap-rails 
    uglifier (>= 1.3.0) 

私は、私はこの問題に直面rake sometaskを実行し、

You don't have bcrypt-ruby installed in your application. Please add it to your Gemfile and run bundle install 
rake aborted! 
can't activate bcrypt-ruby (~> 3.0.0), already activated bcrypt-ruby-3.1.1. Make sure all dependencies are added to Gemfile. 
/Users/apple/.rvm/gems/[email protected]/gems/bundler-1.3.5/lib/bundler/rubygems_integration.rb:224:in `block in replace_gem' 
/Users/apple/.rvm/gems/[email protected]/gems/activemodel-4.0.0/lib/active_model/secure_password.rb:47:in `has_secure_password' 
/Users/apple/Projects/YH/multi-domains/app/models/super_admin_user.rb:2:in `<class:SuperAdminUser>' 
/Users/apple/Projects/YH/multi-domains/app/models/super_admin_user.rb:1:in `<top (required)>' 
/Users/apple/.rvm/gems/[email protected]/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:423:in `load' 
/Users/apple/.rvm/gems/[email protected]/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:423:in `block in load_file' 
/Users/apple/.rvm/gems/[email protected]/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:615:in `new_constants_in' 
/Users/apple/.rvm/gems/[email protected]/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:422:in `load_file' 
/Users/apple/.rvm/gems/[email protected]/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:323:in `require_or_load' 
/Users/apple/.rvm/gems/ruby[email protected]/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:462:in `load_missing_constant' 
/Users/apple/.rvm/gems/[email protected]/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:183:in `const_missing' 
/Users/apple/Projects/YH/multi-domains/lib/tasks/generate_new_data.rake:3:in `block in <top (required)>' 

どのように私はこの問題を解決する必要がありますか?

答えて

0

追加;あなたのgemfileに 'bcryptのルビー' 宝石、 '〜> 3.1.1'

それとも、特に3.0.0をしたい場合は、マクシムスのアドバイスに従うと、追加:「bcryptの-Rubyの宝石、 '3.0.0'

その後、バンドルはbcrypt-rubyを更新します。

また、gemfile.lockを削除してバンドルインストールを再実行してみることもできます。

0

Gemfile.lockを削除し、gem 'bcrypt-ruby'、 '3.0.0'を指定してください。実行bundle install。実際、ローカルのgemファイルでは、bcrypt-rubyをアンインストールする必要があります。

44

あなたのgemfileにはバージョンを指定していないので、最新のバージョンのbcrypt-ruby(3.1.1)をインストールしますが、必要なものは3.0.0から3.0.9までです。あなたはそうのようなバージョンの制約を追加することによって、これを取得することができます:

gem 'bcrypt-ruby', '~> 3.0.0' 

バージョン要件は、現在、bcryptの-ルビー(〜> 3.0.0)の明示的な依存関係を持っているActiveModelのSecurePasswordから来ています。あなたはgithubに依存関係を見ることができます。このコードを実行すると、インストールされていないバージョン3.0.0〜3.0.9が検索され、エラーが発生します。

この依存関係は数日前に '〜> 3.1.0'に更新されましたが、まだレールのアクティブモデルの宝石には入っていません。それが終わると、それに応じてバージョンを更新する必要があります。好奇心が強い場合はcommitをご覧ください。

1

私は同じ問題を抱えていました。 bundle installと再起動、サーバーを実行し

gem 'bcrypt-ruby', '~> 3.0.0'

を追加します。私

0

のために働いていた私は、同じ問題があったが、現在のアプローチは、それが動作するはずですが、(Gemfileにラインgem 'bcrypt-ruby', '3.0.0'を追加し、特定のバージョン3.0.0をインストールgem 'bcrypt-ruby', '~> 3.0.0'は私が実際にインストールさそううまくいきませんでしたバージョン3.0.0 を提供しましたバージョン3.0.9)この後

gem install --version='3.0.0' bcrypt-ruby

まで、ちょうどあなたがbundle show bcrypt-rubyを実行することができ、あなたのバンドルのインストールを検証し、その後、あなたはこの宝石がインストールされたパス、

%のRUBY_PATHの%/ libのようなものを/持っている必要がありますruby/gems/2.0.0/gems/bcrypt-ruby-3.0。私は誰かが、まだこの問題に遭遇した場合にこれを掲示...問題なくbcryptのを使用することができたこれらのステップの後に0

3
  1. は「に行くの両方の3.0.1と3.1.2 bcryptのバージョンをインストールします\ Ruby200 \ libに\ルビー\宝石2.0.0 \宝石\ \ bcryptの-ルビー-3.1.2-x86ベースMINGW32 \ LIB \
  2. "libに2.0.0 \宝石\ Ruby200 \ libに\ルビー\宝石\ bcryptの-ルビー-3.0.1-x86ベースMINGW32」
  3. がに貼り付ける '2.0' フォルダをコピーし、" 宝石が含まれますあなたのGemfileの 'bcrypt-ruby'
  4. バンドルインストール
+0

それは素晴らしい作品。ありがとう –

0

使用ActiveModelが

gem 'bcrypt-ruby', '~> 3.0.0' 

をhas_secure_passwordは同じ問題を持っていました。上の行からコメント#を削除すると、jconleyのように私の問題は解決しました。

0

開発テスト環境用の/active_model/secure_password.rbでのbycriptのバージョンの依存関係を削除するだけで動作しました。

私は常にコンソールでの生産にだけに100%安全な

0

それを追加することを確認しました:

$ gem install bundler 
$ gem install bcrypt 
$ bundle update bcrypt 
関連する問題