按照 Github 页面上描述的设置rbenv
并运行rbenv global 1.9.2-p290
命令后,ruby -v
仍然输出 1.8.7。当我尝试运行 bundle 时,由于新的 Ruby 1.9 哈希语法而出错,所以我知道它仍在使用 Ruby 1.8 运行。
我在 Vagrant Railscast 之后遇到了这个问题。所以这是在剧集中的流浪虚拟盒子里。
您必须重新启动 shell 才能使其正常工作。rbenv 中的一些魔法包含在你的 shell 的启动脚本中,除非你手动调用脚本,否则它只会在你完成安装后启动的 shell 中工作。
另一个可能的原因是,如果您跳过了将代码添加到 shell 启动脚本的步骤。要完全激活 rbenv,您必须添加eval "$(rbenv init -)"
到适当的脚本:~/.profile
如果您使用的是 bash,或者~/.zshrc
如果您使用的是 zsh。
此外,如果您想rbenv
为所有用户启用,您可以将它们添加到这些文件的系统范围版本中,存储在/etc
嗯,这件事曾经发生在我身上,当时我有一个流浪.rbenv-version
文件。你rbenv local
以前可能不小心创造了一个吗?或者您尝试运行的项目是否带有一个(尽管如果它需要 1.9 功能那会很奇怪)。