/ / Windows上でruby2.0と共にbcrypt 3.0.1を使用する際の問題 - ruby​​-on-rails-3、rubygems、bcrypt

Windowsでruby2.0でbcrypt 3.0.1を使用する際の問題 - ruby​​-on-rails-3、rubygems、bcrypt

Windows 8にbcrypt 3.0.1または3.1.2をインストールする際に何か問題がありましたか?私は「異なるバージョンをテストしようとしましたが、このエラーが出ます」

しかし、私はレールを走らせた後にこのエラーが出ますサーバ。 そのようなファイルをロードすることはできません - 2.0 / bcrypt_ext アプリケーションにbcrypt-rubyがインストールされていない。 gemfileに追加してbundle installを実行してください。 "

私は使用しています: OS:Windows 8 Rails 4.0.0 Ruby 2.0.0 bcrypt-ruby 3.0.1

私のgemsfileにはbcryptがこのように定義されています。 gem "bcrypt-ruby"、 "3.0.1"

3.0.1をアンインストールして3.1.2をインストールしたら、gemfileを3.1.2を指すように更新し、bundle installを実行してからrailsサーバーを実行します。

"bcrypt-rubyを起動できません(〜> 3.0.0)、すでに3.1.2を起動しています...全ての依存関係がgemfileに追加されていることを確認してください。"

私はすべての依存関係を手に入れるためにバンドルの更新をしてみましたが、運が悪くなりました。私は「複数のフォーラムを検索し、運が悪くても多くの解決策を試してみました。アドバイスやフィードバックがあれば幸いです」

ありがとうございました!

回答:

回答№1については9

bcrypt-ruby 3.0.1は約2年前にリリースされたもので、あなたの環境とは互換性がありません。最新のリリース[3.1.2]を使う必要があります。

それが私のGemfileでの宣言です。

gem "bcrypt-ruby", github: "codahale/bcrypt-ruby"

または

gem "bcrypt-ruby", "3.1.2"

から取得する http://rubygems.org

エラーを取り除くには( "tcrypt-ruby(〜> 3.0.0)を有効にすることはできません、...")

ruby_dir/lib/ruby/gems/2.0.0/gems/activemodel-4.0.0/lib/active_model/secure_password.rb:47

そしてその行を

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

gem "bcrypt-ruby", "~> 3.1.0"

回答№2の場合は1

でサンプルアプリを構築するときに私は同じ問題に遭遇しました http://ruby.railstutorial.org/。この答えは、ちょっとした調整で、私には解決しました。

https://stackoverflow.com/a/17368137/2721455

gemをアンインストールして再インストールした後上記の記事の指示に従って、私は自分のRuby200 / lib / ruby​​ / gems / 2.0.0 / gemsディレクトリに入り、-mingw32または-mingw64で終わっていたbcrypt-rubyのすべてのバージョンを削除しました。 ruby-3.0.1 "と" bcrypt-ruby-3.1.2 "のタクト。

警告 - あなたがバンドルアップデートを実行する場合、bcrypt-rubyのWindows版が自動的に再インストールされるので、あなたはもう一度これを何度もしなければならないでしょう。