2013-06-23 46 views
4

我安裝了Ruby 2.0,但Rails無法識別它並告訴我升級到1.9.3。爲什麼Rails不使用正確版本的Ruby?

當我運行:

rails console 

我得到:

Rails 4 prefers to run on Ruby 2.0. 

You're running 
    ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin12.0] 

Please upgrade to Ruby 1.9.3 or newer to continue. 

這種情況與所有Rails的命令。 rails newrails s,等等,但是,我絕對有安裝了Ruby 2.0:

ruby -v 
ruby 2.0.0p195 (2013-05-14 revision 40734) [x86_64-darwin12.3.0] 

它也似乎並不與紅寶石的不正確的默認版本的一個問題:

rvm list 

rvm rubies 

ruby-1.9.3-p429 [ x86_64 ] 
=* ruby-2.0.0-p195 [ x86_64 ] 

# => - current 
# =* - current && default 
# * - default 

我讀地方,這可能是與我的PATH變量的一個問題:

printenv PATH 
/Users/Aoeu/.rvm/gems/ruby-2.0.0-p195/bin:/Users/Aoeu/.rvm/gems/ruby-2.0.0- [email protected]/bin:/Users/Aoeu/.rvm/rubies/ruby-2.0.0-p195/bin:/Users/Aoeu/.rvm/bin:/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/usr/bin:/bin:/usr/sbin:/sbin 

我的紅寶石似乎被安裝在合適的位置:

which ruby 
/Users/Aoeu/.rvm/rubies/ruby-2.0.0-p195/bin/ruby 

任何人都可以幫忙嗎?

+0

是否使用了正確的版本,當你開始喜歡這個控制檯:'束EXEC軌C'? – Mischa

+0

它告訴我「找不到Gemfile」,但Rails不讓我創建一個新項目。 「rails new」失敗,告訴我需要升級到1.9.3 – user1943735

+0

如果使用'--auto-dotfiles'和'--autolibs = enabled'選項安裝RVM,它會爲您處理PATH和依賴關係。 – depa

回答

6

它看起來像你的rvm配置真的搞砸了。在this thread中,OP通過卸載rvm並從頭開始重新安裝所有內容來解決此問題。

務必通過運行,使autolibs:

\curl -L https://get.rvm.io | bash -s stable --autolibs=homebrew --rails 
+0

耶。成功!用autolibs重新安裝ruby和rails。現在,一切正常! – user1943735

2

你需要告訴你的寶石環境使用哪個版本的Ruby。你可以在命令行中做到這一點:

rvm --default 2.0.0 
+0

默認情況下已經是2.0.0。看問題。 – Mischa

+0

這對我來說,即使知道它已經顯示它已經是默認。 –

相關問題