2016-01-08 125 views
1

這個問題可能對任何在Linux上使用Ruby很長時間的人都有明顯的答案,但我無法通過Google真正獲得好答案。在Ubuntu上安裝Ruby 2.2.3

我試圖檢查Rails 5測試版,它需要Ruby 2.2.2或更高版本。我已經安裝了RVM(Ruby版本管理器)並將我的ruby版本設置爲2.2.3。運行在終端結果rvm list在下面的輸出:

rvm rubies 

=* ruby-2.2.3 [ x86_64 ] 

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

好,太好了。我安裝了Ruby 2.2.3。讓我們試試bundle update

Installing rack 2.0.0.alpha (was 1.6.4) 

Gem::InstallError: rack requires Ruby version >= 2.2.2. 

好吧,那很奇怪。我有什麼版本的紅寶石?運行ruby -v給我這個:

ruby 2.1.5p273 (2014-11-13) [x86_64-linux-gnu] 

所以...我有2.2.3嗎?是什麼賦予了?

回答

2

由於您使用bundle,我建議您檢查您的Gemfile的紅寶石版本。你也可以用bundle exec ruby -v

測試它也可以嘗試:

rvm use ruby-2.2.3 
bundle exec ruby -v 
+0

它仍然是2.1.5 – NmdMystery

+0

你在'Gemfile'中有'ruby 2.1.5'指令嗎? –

+0

其實,這裏發生了什麼 - 我嘗試使用rbenv,現在ruby -v顯示我正在使用2.2.3。我把這個指令放在Gemfile中,現在運行bundle update說我有2.1.5。這可能是因爲該項目使用ruby 2.1.5進行初始化,但我不知道如何解決這個問題。 – NmdMystery

1

也許通過rvm默認的Ruby版本設置爲一個你(紅寶石2.2.3)解決了這個問題,通過做rvm --default use ruby-2.2.3。然後重新加載bash並執行ruby -v以檢查Ruby的默認版本是否已正確更改,然後再次嘗試執行bundle install命令。

如果你不知道zshoh-my-zsh,我強烈建議這樣的事情。您可以配置終端,以便向您展示您每時每刻都在使用的Ruby和Rails的當前版本。在這裏檢查:http://ohmyz.sh/

0

除了做rvm use --default 2.2.3rvm use 2.2.3請確保你還沒有從apt(或任何包管理器)仍然安裝的ruby包。出於某種原因,該ruby包可能優先於RVM Ruby。

此外,請嘗試執行rvm uninstall 2.1.5以強制您的系統默認爲2.2.3 ...您可以隨時重新安裝2.1.5,如果此問題持續存在,則應將2.2.3作爲默認設置。