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

Nat*_*sos 5 ruby ruby-on-rails

我安装了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]
...
Run Code Online (Sandbox Code Playgroud)

但是当我运行我的应用程序时,它仍然使用ruby 1.8.7.(1.9中存在的方法失败).rails/console中的所有内容都像1.8一样,IRB内的行为类似于1.9.

如何强制我的应用程序使用1.9?

我熟悉RVM,我特别询问rbenv.

mol*_*olf 5

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

相反,使用binstubs或bundle exec(文档):

bundle exec rails server
Run Code Online (Sandbox Code Playgroud)

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