【发布时间】:2020-07-03 03:07:04
【问题描述】:
我刚刚删除了rbenv,因为我想安装比rbenv 可用的更新的Ruby 版本(2.6),然后安装了Ruby 2.6,一切正常,现在尝试重新安装所有gem我的应用程序遇到了以下问题:
$ bundle install
Installing signet 0.14.0
Gem::InstallError: signet requires Ruby version >= 2.4.0.
An error occurred while installing signet (0.14.0), and Bundler cannot continue.
Make sure that `gem install signet -v '0.14.0' --source 'https://rubygems.org/'` succeeds before bundling.
In Gemfile:
google_drive was resolved to 2.1.12, which depends on
google-api-client was resolved to 0.21.2, which depends on
googleauth was resolved to 0.6.7, which depends on
signet
但是 ruby 显然已经升级了:
$ ruby -v
ruby 2.6.6p146 (2020-03-31 revision 67876) [x86_64-linux-gnu]
如果我尝试手动安装 signet,它可以正常工作:
gem install signet -v '0.14.0' --source 'https://rubygems.org/'
Successfully installed signet-0.14.0
Parsing documentation for signet-0.14.0
Done installing documentation for signet after 0 seconds
1 gem installed
但是,如果我再次运行bundle install,我仍然会遇到同样的问题。我也试过bundle install --path vendor/cache 和bundle install --system 无济于事。
请注意,gem 似乎安装在正确的位置:
gem which signet
/var/lib/gems/2.6.0/gems/signet-0.14.0/lib/signet.rb
如果我将它与 bundler 安装的另一个比较:
gem which multi_json
/var/lib/gems/2.6.0/gems/multi_json-1.14.1/lib/multi_json.rb
这是Ubuntu 16.04.4 LTS 和bundler 1.16.3
我该如何解决这个问题?
【问题讨论】:
标签: ruby-on-rails ubuntu bundler rbenv