由于bcrypt,无法为我的应用程序运行puma服务器

时间:2016-06-07 10:40:28

标签: ruby-on-rails ruby bundle bcrypt-ruby

我的机器是Windows 8 32位机器,我有ruby 2.1.8。

当我尝试在puma和rails服务器中打开我的应用程序时,我遇到了问题。我甚至无法运行bundle install。 erorr是:

in `require': 126: The specified module could not be found.
  - C:/Ruby21/lib/ruby/gems/2.1.0/gems/bcrypt-ruby-3.1.1.rc1-x86-mingw32/lib/bcrypt_ext.so (LoadError)

并且捆绑安装错误是:

could not find gem 'bcrypt (=3.1.5 rc1) x64-mingw32' in any of the gemfile ruby 2.1.8

同样的问题也发生在bcrypt 3.0.0和3.1.1版

我的Gemfile是:

source 'http://rubygems.org'

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

# Use sqlite3 as the database for Active Record
gem 'pg'

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

# 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'
gem 'coffee-script-source', '1.8.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'

gem 'rails-jquery-autocomplete', :git 'https://github.com/AyushRuiaHW/rails-jquery-autocomplete.git'

# 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

gem 'tzinfo-data'
gem 'faraday'
gem 'hypdf', '~> 1.0.12'
gem 'currency-in-words'
gem "jquery-ui-rails"
gem 'Instamojo-rb'
gem "kaminari"
gem "rails-erd"
gem 'levenshtein', '~> 0.2.2'
gem "lol_dba"
gem "bullet", :group => "development"
gem "bootstrap-sass"
gem 'rack-mini-profiler'
gem 'newrelic_rpm'
gem 'puma_worker_killer'
# 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 'postmark-rails'
gem 'bcrypt-ruby', '3.1.5.rc1', :require => 'bcrypt'
gem 'puma'
gem "paperclip", "~> 3.0"
gem 'aws-sdk', '~> 1'
gem 'aws-sdk-resources', '~> 2'
gem 'rails_12factor', group: :production

ruby "2.1.8"

2 个答案:

答案 0 :(得分:0)

删除旧宝石' bcrypt-ruby',然后插入

gem 'bcrypt', '~> 3.1', '>= 3.1.11'

并运行

bundle install

答案 1 :(得分:0)

您需要删除旧的gem并使用以下

更新gemfile
gem 'bcrypt-ruby', '~> 3.1.0'

并运行bundle install,然后重新启动服务器。

您可能还想尝试删除gemfile.lock并重新运行bundle install

您可以直接从命令行安装gem bcrypt,如下所示:

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

然后运行bundle install