如何强制Rails使用我想要的Ruby版本(用rbenv管理)?

时间:2011-10-04 20:29:07

标签: ruby-on-rails ruby

我安装了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。

1 个答案:

答案 0 :(得分:5)

您是否使用bundle install安装了Rails?如果是这样,请注意Bundler不会将可执行文件添加到Ruby的可执行文件目录中。

相反,请使用binstubs或bundle execdocumentation):

bundle exec rails server

如果您没有使用Bundler安装Rails,您可能应该rbenv rehash更新可执行的填充程序。那么rails server应该可以正常工作。但是,只有当Rails直接与Rubygems一起安装时,这才有效,因此调用Rails是一种不可靠的方式。