【问题标题】:Rails Seeing Incorrect Ruby VersionRails 看到不正确的 Ruby 版本
【发布时间】:2016-11-12 10:18:33
【问题描述】:

我已经构建了一个 Rails 5 应用程序,它运行良好,但我想更改运行它的 Ruby 版本。我在 Ubuntu 16.04 上使用 RVM 1.27.0。我将 app 文件夹复制到不同的路径并更改了 .ruby_version 和我的 Gemfile 上的版本:

宝石文件:

source 'https://rubygems.org'
ruby "2.2.2"

.ruby_version:

ruby-2.2.2

一旦我更新了这些,我就移出并回到文件夹中并运行了 ruby​​ -v:

ruby 2.2.2p95 (2015-04-13 revision 50295) [x86_64-linux]

然后我运行了一个捆绑安装,并且所有内容都安装无误。

但是,当我运行 rake -T 时,我得到了这个:

Your Ruby version is 2.3.1, but your Gemfile specified 2.2.2.

我的 $PATH 看起来不错:

/home/ken/.rvm/gems/ruby-2.2.2/bin:/home/ken/.rvm/gems/ruby-2.2.2@global/bin:/home/ken/.rvm/rubies/ruby-2.2.2/bin:/home/ken/.rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

我错过了什么? Rails 从哪里提取 Ruby 版本?我该如何解决这个问题?

【问题讨论】:

    标签: ruby-on-rails ruby rvm


    【解决方案1】:

    您正在使用系统捆绑程序,这就是您看到不同版本的 ruby​​ 的原因。您需要做的就是在您当前的 ruby​​ 版本下安装 bundler:

    gem install bundler
    bundle install
    

    进行捆绑安装后,您将获得为正确的 ruby​​ 版本构建的 gem。

    【讨论】:

    • 谢谢!效果很好!
    【解决方案2】:

    文件名应该是.ruby-version,而不是.ruby_version

    您还应该拥有包含内容的文件 .ruby-gemset

    gemset
    

    查看此链接,Create .ruby-version and .ruby-gemset with rvm

    你也可以试试spring stopgem install bundler

    【讨论】:

    • 这不起作用。仍然出现相同的错误,现在捆绑器甚至没有安装。 :(
    • @user3063045 你能提供主机名和密码给我吗?我的电子邮件是 dilin.life@gmail.com。我一直在使用 rvm。
    • 感谢您的报价,但没有。我什至不在主机上使用密码。
    • @user3063045 tryspring stop,可能是缓存问题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-23
    • 1970-01-01
    • 2010-12-08
    • 1970-01-01
    相关资源
    最近更新 更多