我安装了 rbenv 和 ruby-build。然后我安装了 ruby 1.9.2p290。一切看起来都很好。
$ cd my_rails_app
$ ruby -v
1.9.2p290
$ rails server
...
[2011-10-04 13:51:01] INFO WEBrick 1.3.1
[2011-10-04 13:51:01] INFO ruby 1.8.7 (2010-01-10) [universal-darwin11.0]
...
但是当我运行我的应用程序时,它仍在使用 ruby 1.8.7。 (1.9 中存在的方法失败)。 rails/console 中的所有内容都像 1.8,而在 IRB 中则像 1.9。
如何强制我的应用使用 1.9?
我熟悉RVM,特意问一下rbenv。
最佳答案
您是否使用 bundle install
安装了 Rails?如果是这样,请注意 Bundler 不会将可执行文件添加到 Ruby 的可执行目录中。
相反,使用 binstubs 或 bundle exec
( documentation ):
bundle exec rails server
如果您没有安装带有 Bundler 的 Rails,您可能应该执行 rbenv rehash
来更新可执行 shim。然后 rails server
应该可以正常工作。但是,这仅在 Rails 直接与 Rubygems 一起安装时才有效,因此这是一种不可靠的调用 Rails 的方式。
关于ruby-on-rails - 我如何强制 Rails 使用我想要的 Ruby 版本(由 rbenv 管理)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7653656/