我正在使用puppet脚本从vagrant构建的虚拟框中运行我的rails应用程序。每次登录时,我都会遇到以下问题:
当我运行rvm list
时,其列出的内容之一如下:
=* ruby-2.1.1
但是当我尝试运行rails console
时,它告诉我需要安装缺少的宝石。当我运行rvm use default
,然后运行rails console
时,它可以运行。为什么rvm中的默认和当前设置不起作用 - 为什么我还要进一步告诉rvm使用哪个ruby版本?
注意:我确实有一个带有2.1.1的.ruby-version文件。我使用的是rvm版本1.25.25
答案 0 :(得分:0)
因为您必须告诉rvm使用哪个版本。
在早期版本的rvm中,我们必须定义.rvmrc文件,该文件提及要使用的ruby和gemset。
在最新版本的rvm中,我们必须定义带有ruby版本的.ruby-version文件和名为gemset的.ruby-gemset文件。
如果您只是想要一个快速解决方案,那么在rails目录中创建一个内容为2.1.1
的.ruby-version文件
答案 1 :(得分:0)
正确的语法是:
rvm - 默认使用ruby-2.1.1@global
此命令将ruby永久设置为选定的默认值。所有新终端都将使用您的默认Ruby。你也没有提到有关gemset的任何内容,所以如果你没有弄乱你的设置,我认为全局会存在。
答案 2 :(得分:0)
这解决了它:
我将rvm use --default
添加到了机器的〜/ .bashrc文件中。