【问题标题】:rbenv Your Ruby version is 2.0.0, but your Gemfile specified 2.1.2rbenv 你的 Ruby 版本是 2.0.0,但是你的 Gemfile 指定了 2.1.2
【发布时间】:2014-11-23 21:37:46
【问题描述】:

我正在使用rbenv,当我执行rails s时出现跟随错误

您的 Ruby 版本是 2.0.0,但您的 Gemfile 指定的是 2.1.2

我正在阅读这个帖子:Mavericks, RBENV, Your Ruby version is 2.0.0, but your Gemfile specified 2.1.1

但错误仍然存​​在。

rails -v
Your Ruby version is 2.0.0, but your Gemfile specified 2.1.2

和命令

sudo gem install bundler 
rbenv rehash

$ which ruby /usr/bin/ruby

$ bundle exec which ruby Your Ruby version is 2.0.0, but your Gemfile specified 2.1.2

解决不了问题。 我做错了什么?

【问题讨论】:

  • 请给我们一份您的 gemfile 的副本好吗?
  • 请发出以下命令并给出结果:which rubybundle exec which ruby
  • @МалъСкрылевъ 我用结果更新了问题
  • bundle exec which ruby 是怎么说的
  • @МалъСкрылевъ 说Your Ruby version is 2.0.0, but your Gemfile specified 2.1.2

标签: ruby-on-rails ruby rbenv gemfile


【解决方案1】:

您使用的是哪个版本的 ruby​​?

ruby -v

听起来 Gemfile 对 2.1.2 列出了 ruby​​ 要求。您可能需要安装该版本:

rbenv install 2.1.2

那么你可能需要告诉 rbenv 为那个项目使用那个版本:

rbenv local 2.1.2

看起来 rbenv 团队/社区决定不添加对 Gemfile 中指定的 ruby​​ 版本的支持。参考:https://github.com/sstephenson/rbenv/issues/223

【讨论】:

  • 我试过了,但同样的问题。 ruby -v > ruby​​ 2.0.0p451(2014-02-24 修订版 45167)[universal.x86_64-darwin13]
  • 运行“rbenv install 2.1.2”后发生了什么?如果您执行“rbenv list”,它是否显示您已安装 2.1.2?在“重新绑定本地 2.1.2”步骤之后,您可能需要 cd 退出目录并重新 cd 进入。
  • 安装了很多包,现在如果我执行rbenv local 2.1.2没有显示任何错误,但我的ruby -v还是一样
  • 是否有 .ruby-version 文件,您是否 cd 退出该目录并重新进入?
  • 不,任何文件,仅在 May Gemfile 中,但指定的版本是 2.1.2
【解决方案2】:

如果你在 Rails 项目中得到这个,并且你最近升级了你的 ruby​​ 版本,你可能有 spring 运行旧版本的 ruby​​。 ./bin/spring stop 会解决这个问题。

【讨论】:

  • 我最近没有升级,但这确实解决了问题。就我而言,“which ruby​​”、“bundle exec which ruby​​”、“rvm list”等所有命令都表示我使用的是正确的 ruby​​ 版本,但来自同一命令提示符的“rails console”继续尝试使用另一个版本。非常感谢。
【解决方案3】:

如果是 macOS,并且您的新 Ruby 来自自制软件,请尝试 sudo gem bundler

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-17
    • 2023-01-17
    • 2022-12-21
    • 1970-01-01
    • 1970-01-01
    • 2016-03-04
    • 2014-05-27
    • 1970-01-01
    相关资源
    最近更新 更多