无法更改rbenv全球红宝石版本

Dar*_*ler 2 ruby-on-rails rbenv

我最近从RVM切换到rbenv,即使'rbenv版本'告诉我我想切换到该版本,我似乎也无法在ruby版本之间切换。

我在做什么:

ruby -v
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]
Run Code Online (Sandbox Code Playgroud)

我想切换到1.9.2-p290,因此请确保在我的版本中安装了它:

ruby versions
1.8.7-p370
1.9.2-p290
1.9.3-p125
1.9.3-rc1
Run Code Online (Sandbox Code Playgroud)

好了,现在我知道我可以尝试更改全局rbenv:

rbenv global 1.9.2-p290
ruby -v
ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0]
Run Code Online (Sandbox Code Playgroud)

似乎1.8.7仍是活跃的全球红宝石。

因此,让我们尝试使其在我的项目中本地化。rbenv本地1.9.2-p290

这将在我的rails项目中创建一个.rbenv-versions文件。伟大的尝试运行捆绑:

Gem::InstallError: factory_girl requires Ruby version >= 1.9.2.
An error occurred while installing factory_girl (4.1.0), and Bundler cannot continue.
Make sure that `gem install factory_girl -v '4.1.0'` succeeds before bundling. 
Run Code Online (Sandbox Code Playgroud)

我不确定下一步该怎么做...

Jan*_*svw 5

我今天在朋友的(OSX)计算机上解决了这个问题,问题可能是您同时安装了RVM和Rbenv,首先必须确保删除了RVM;

在终端中执行:

sudo rm -rf ~/.rvm
Run Code Online (Sandbox Code Playgroud)

完成后,重新打开终端。然后尝试ruby -v,您看到的版本可能是系统版本ruby 1.8.7。然后再次尝试使用Rbenv选择正确的Ruby版本:

rbenv global 2.0.0-p247
Run Code Online (Sandbox Code Playgroud)

另外,请确保Rbenv在您的路径中:

echo $PATH
=> /Users/jankeesvw/.rbenv/bin:/Users/jankeesvw/.rbenv/shims:/Users/jankeesvw/.rbenv/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/mysql/bin
Run Code Online (Sandbox Code Playgroud)

如果此Rbenv不在您的路径中,请按照Rbenv github页面上的说明进行操作