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



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

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

相反,使用binstub或bundle exec (documentation):

bundle exec rails server

如果你没有安装Rails与Bundler,你可能应该做一个rbenv rehash来更新可执行的垫片。那么rails server应该工作良好。然而,这只能在Rails直接与Rubygems一起安装的情况下工作,所以这是一种不可靠的调用Rails的方式。

最新更新