【发布时间】:2019-08-07 08:11:38
【问题描述】:
Bundler::RubyVersionMismatch: Your Ruby version is 2.3.1, but your Gemfile specified 2.1.8
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/definition.rb:417:in `validate_ruby!'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler.rb:91:in `setup'
/opt/chef/embedded/lib/ruby/gems/2.3.0/gems/bundler-1.12.5/lib/bundler/setup.rb:19:in `<top (required)>'
/opt/chef/embedded/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
/opt/chef/embedded/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in `require'
bundler: failed to load command: rake (/home/deploy/.bundler/app_name/ruby/2.1.0/bin/rake)
它显示的所有地方:2.1.8
ruby -v ==> 2.1.8 Gemfile 有 ==> 2.1.8
不知道它从哪里获取版本 2.3.1。
我想将 2.3.1 从它带到它的任何地方删除。
不确定,这是与服务器上的厨师设置或 ruby 安装有关的错误。
任何帮助将不胜感激。
【问题讨论】:
-
你能发布你的 Gemfile 的标题吗?它应该包含行
ruby "2.1.8"。您应该将该值更改为2.3.1。但要小心,因为您可能需要在您的应用中进行一些重构 -
所有地方:2.1.8。 ruby -v => 2.1.8 Gemfile => ruby 2.1.8
-
so
ruby -v在服务器上执行也显示 2.1.8?您还可以通过执行which ruby来检查您的 ruby 是如何在服务器上设置的 -
是的,在服务器上执行的 ruby -v 也显示 2.1.8。哪个红宝石显示
/usr/local/bin/ruby
标签: ruby-on-rails rake bundler