ruby-on-rails - 运行 Ruby 2.3.1 时为 "Gem::InstallError: devise requires Ruby version >= 2.1.0."

标签 ruby-on-rails ruby

在我的持续集成机器中,我运行的是 Ruby 2.3.1p112:

$ ruby --version
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin15]

但是当我尝试安装 gems 时,出现了一个毫无意义的错误:

$ bundle install --deployment
Fetching gem metadata from https://rubygems.org/
Fetching version metadata from https://rubygems.org/
Fetching dependency metadata from https://rubygems.org/
Rubygems 2.0.14.1 is not threadsafe, so your gems will be installed one at a time. Upgrade to Rubygems 2.1.0 or higher to enable parallel gem installation.
Using rake 10.5.0
Using i18n 0.7.0
Using json 1.8.3
...
Installing devise 4.0.1

Gem::InstallError: devise requires Ruby version >= 2.1.0.
An error occurred while installing devise (4.0.1), and Bundler cannot continue.
Make sure that `gem install devise -v '4.0.1'` succeeds before bundling.

全局安装 gem 有效:

$ sudo gem install devise -v '4.0.1'
Successfully installed devise-4.0.1
Parsing documentation for devise-4.0.1
Done installing documentation for devise after 1 seconds
1 gem installed

但是没有区别。关于 Rubygems 的提示也很奇怪,因为我正在运行 2.6.4:

$ update_rubygems
RubyGems 2.6.4 installed

任何想法可能会发生什么?

我的 Gemfile 看起来像这样:

source "https://rubygems.org"

gem "activerecord-session_store", "~> 0.1.2"
gem "bootstrap-sass", "~> 3.3.6"
gem "breadcrumbs_on_rails", "~> 2.3.1"
gem "coffee-rails", "~> 4.1.0"
gem "delayed_job_active_record", "~> 4.1.0"
gem "devise", "~> 4.0.0"
gem "devise_invitable", git: "https://github.com/scambra/devise_invitable.git" # Using master because the current release version seems not to work with Devise 4.0.
gem "font-awesome-rails", "~> 4.6.1.0"
gem "gibbon", "~> 2.2.3"
gem "haml-rails", "~> 0.9"
gem "html5shiv-rails", "~> 0.0.2"
gem "jbuilder", "~> 2.0"
gem "jquery-rails"
gem "paper_trail", "~> 4.1.0"
gem "paranoia", "~> 2.1.5"
gem "pg", "~> 0.15"
gem "pundit", "~> 1.1.0"
gem "rack-timeout", "~> 0.4.2"
gem "rails", "~> 4.2.6"
gem "redcarpet", "~> 3.3.4"
gem "respond-rails", "~> 1.0"
gem "rest-client", "~> 1.8.0"
gem "rollbar", "~> 2.11.2"
gem "sass-rails", "~> 5.0"
gem "sdoc", "~> 0.4.0", group: :doc
gem "simple_form", "~> 3.2.1"
gem "stripe", "~> 1.41.0"
gem "validation_auditor", "~> 1.0.0"
gem "uglifier", ">= 1.3.0"

group :development do
  gem "quiet_assets"
  gem "spring"
  gem "web-console", "~> 2.0"
end

group :development, :test do
  gem "annotate", "~> 2.6.5"
  gem "byebug" # Call "byebug" anywhere in the code to stop execution and get a debugger console
  gem "database_cleaner", "~> 1.5.3"
  gem "factory_girl_rails", "~> 4.7.0"
end

group :development, :staging do
  gem "mail_safe", "~> 0.3.4"
end

group :test do
  gem "assert_difference", "~> 1.0.0"
  gem "bundler-audit", "~> 0.5.0"
  gem "capybara", "~> 2.7.0"
  gem "capybara-email", "~> 2.5.0"
  gem "capybara_minitest_spec", "~> 1.0.5"
  gem "simplecov", "~> 0.11.2", require: false
  gem "shoulda-context", "~> 1.2.1"
  gem "poltergeist", "~> 1.9.0"
end

group :production, :staging do
  gem "unicorn-rails", "~> 2.2.0"
end

我既没有使用 RVM,也没有使用任何其他 Ruby/Gem 管理器。

最佳答案

通过运行重新安装 bundler :

sudo gem install bundler

解决了这个问题。

关于ruby-on-rails - 运行 Ruby 2.3.1 时为 "Gem::InstallError: devise requires Ruby version >= 2.1.0.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37211118/

相关文章:

ruby-on-rails - Ruby on Rails Beta 3 在 Snow Leopard 上安装 - 未找到文件

mysql - 使用 ruby​​ on rails 在 Ubuntu 上安装 MySQL [错误]

ruby-on-rails - 工厂女孩 : Automatically assigning parent objects

ruby-on-rails - Rails 唯一性 => 真正的编码问题

ruby-on-rails - 为什么我的回溯被过滤了?

ruby-on-rails - 如何检查对象是否具有时间值?

ruby-on-rails - 使用载波和雾将 Rails 图像上传到 S3

ruby-on-rails - 如何让 ActionController::Live streaming 与 Thin 一起工作?

jquery - 需要帮助使用 Ruby on Rails 中的 hide_field 将 jQuery UI Slider 的值传递到表单

ruby - 如何在 Curb gem 中设置 --data-binary 和 --compressed