【问题标题】:RVM: Can set the default ruby version but cannot set the current versionRVM:可以设置默认的 ruby​​ 版本,但不能设置当前版本
【发布时间】:2020-12-30 02:54:12
【问题描述】:

问题:虽然默认的 ruby​​ 设置为 ruby​​ 2.2.2。当我打开终端时,加载了 ruby​​ 2.2.1。当我打开一个新终端时,如何确保 ruby​​ 2.2.2 加载。

问题措辞不同:除非我卸载 ruby​​ 2.2.1,否则我无法将 current && default 设置为 ruby​​ 2.2.2。这就是我输入rvm list 时得到的结果

   ~ $ rvm list

    rvm rubies

       ruby-1.8.7-head [ x86_64 ]
       ruby-1.8.7-p374 [ x86_64 ]
       ruby-1.9.3-p551 [ x86_64 ]
       ruby-2.0.0-p353 [ x86_64 ]
       ruby-2.2.0 [ x86_64 ]
    => ruby-2.2.1 [ x86_64 ]
     * ruby-2.2.2 [ x86_64 ]
       ruby-2.2.4 [ x86_64 ]

    # => - current
    # =* - current && default
    #  * - default

我希望current && default 是 ruby​​-2.2.2。如果我输入rvm use default,我会得到如下结果(这就是我想要的)。

~ $ rvm list

rvm rubies

   ruby-1.8.7-head [ x86_64 ]
   ruby-1.8.7-p374 [ x86_64 ]
   ruby-1.9.3-p551 [ x86_64 ]
   ruby-2.0.0-p353 [ x86_64 ]
   ruby-2.2.0 [ x86_64 ]
   ruby-2.2.1 [ x86_64 ]
=* ruby-2.2.2 [ x86_64 ]
   ruby-2.2.4 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

如何确保每次打开终端时环境 current && default 设置为 ruby​​ 2.2.2,如上所示? 一个观察:如果我卸载 ruby​​ 2.2.1 它默认为上述情况。我有一些需要 ruby​​ 2.2.1 的项目,但我不能这样做。

我该怎么办?

顺便说一句,which ruby 给出了以下输出:

~ $ which ruby
/home/rk/.rvm/rubies/ruby-2.2.1/bin/ruby

这里有一个类似的问题没有得到解答: RVM default is 2.1.1 but 2.1.2 is loaded initially

这是rvm info的输出:

~ $ rvm info

ruby-2.2.1:

  system:
    uname:       "Linux X200 4.4.0-36-generic #55~14.04.1-Ubuntu SMP Fri Aug 12 11:49:30 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux"
    system:      "ubuntu/14.04/x86_64"
    bash:        "/bin/bash => GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu)"
    zsh:         " => not installed"

  rvm:
    version:      "rvm 1.26.11 (latest) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]"
    updated:      "1 year 3 months 21 days 22 hours 56 minutes 31 seconds ago"
    path:         "/home/rk/.rvm"

  ruby:
    interpreter:  "ruby"
    version:      "2.2.1p85"
    date:         "2015-02-26"
    platform:     "x86_64-linux"
    patchlevel:   "2015-02-26 revision 49769"
    full_version: "ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-linux]"

  homes:
    gem:          "/home/rk/.rvm/gems/ruby-2.2.1"
    ruby:         "/home/rk/.rvm/rubies/ruby-2.2.1"

  binaries:
    ruby:         "/home/rk/.rvm/rubies/ruby-2.2.1/bin/ruby"
    irb:          "/home/rk/.rvm/rubies/ruby-2.2.1/bin/irb"
    gem:          "/home/rk/.rvm/rubies/ruby-2.2.1/bin/gem"
    rake:         "/home/rk/.rvm/rubies/ruby-2.2.1/bin/rake"

  environment:
    PATH:         "/home/rk/.rvm/gems/ruby-2.2.1/bin:/home/rk/.rvm/gems/ruby-2.2.1@global/bin:/home/rk/.rvm/rubies/ruby-2.2.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/rk/.rvm/bin:/home/rk/.rvm/bin:/usr/local/heroku/bin:/home/rk/android-studio/bin:/home/rk/.rvm/bin"
    GEM_HOME:     "/home/rk/.rvm/gems/ruby-2.2.1"
    GEM_PATH:     "/home/rk/.rvm/gems/ruby-2.2.1:/home/rk/.rvm/gems/ruby-2.2.1@global"
    MY_RUBY_HOME: "/home/rk/.rvm/rubies/ruby-2.2.1"
    IRBRC:        "/home/rk/.rvm/rubies/ruby-2.2.1/.irbrc"
    RUBYOPT:      ""
    gemset:       ""

【问题讨论】:

    标签: ruby rvm


    【解决方案1】:

    对我来说,按照命令完成工作

    rvm --default use 2.2.2
    

    您可能对登录 shell 有疑问,需要使用 /bin/bash --login 作为命令

    【讨论】:

    • imgur.com/a/K0LSe 。我很久以前通过首选项启用了登录 shell。请看一下。
    • @ravikanth,是的,这应该可以完美运行,请参考https://rvm.io/rubies/default
    • @Chirag 我以前厌倦了。那没起效。 rvm 安装存在一些问题。我删除并重新安装了 rvm。
    • @Ravikanth,您在使用--default 切换时是否收到错误消息?当您重新安装 RVM 时,是否通过删除所有以前的 RVM 文件进行了全新安装?
    • @Chirag 不。只是当我关闭并重新打开一个新终端时,默认和当前的 ruby​​ 版本是不同的。重新安装后,一切都恢复原状。
    【解决方案2】:

    我通过将 Rails 应用程序中的 .ruby-version 文件更新为您尝试使用的较新 ruby​​ 版本(在您的情况下为 2.2.2)解决了同样的问题

    【讨论】:

      猜你喜欢
      • 2011-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-20
      • 2014-11-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多