我想在Ruby 2.1.0中使用Rails,但它使用的是Ruby 1.9.3(系统的版本)。
我使用rbenv来管理我的Ruby版本。我的步骤是:
$ rbenv install 2.1.0
$ rbenv global 2.1.0
$ sudo gem install rails -v 4.0.2
$ rbenv rehash
$ rbenv versions
system
* 2.1.0 (set by /home/dennis/.rbenv/version)
$ ruby -v
ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-linux]
$ rails new app && cd app
$ rails server
根据{{1}}, Rails使用的是Ruby 1.9.3(x86_64-linux)。来自localhost:3000/rails/info/properties
的日志消息提供:rails server
。
我认为Rails正在使用Ruby的系统版本,因为版本匹配。
INFO ruby 1.9.3 (2012-04-20) [x86_64-linux]
我尝试过的一些没有运气的事情:
$ rbenv local system
$ ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]
$ rbenv local --unset # Unset local Ruby version, go back to 2.1.0
放入项目根目录中的2.1.0
文件中(由@Agis建议)FWIW,我正在使用带有鱼壳的Ubuntu 13.10。
答案 0 :(得分:7)
听起来很傻,但你重启终端会话了吗?
否则尝试输入
/bin/bash --login
答案 1 :(得分:7)
您没有告诉您如何安装rbenv
,但我认为这是每用户安装(默认设置)。在这种情况下,您应该在不使用sudo
的情况下安装gem。当你执行sudo gem install rails
时,它安装在系统ruby中,而不是rbenv的选择。
解决方案 - 安装没有sudo的rails:
rbenv global 2.1.0
gem install rails
rbenv rehash
答案 2 :(得分:3)
尝试使用以下内容在项目的根目录中创建.ruby-version
文件:
2.1.0