2014-07-14 73 views
11

我的Mac OS X具有默認的紅寶石。rbenv無法更改全局紅寶石版本

$ ruby -v 
ruby 2.0.0p451 (2014-02-24 revision 45167) [universal.x86_64-darwin13] 

我安裝了rbenv和ruby 2.1.2版本。

$ rbenv versions 
    system 
* 2.1.2 (set by /Users/sdw/.rbenv/version) 

我試圖將全局ruby版本設置爲2.1.2,但沒有任何發生。

$ rbenv global 2.1.2 
$ ruby -v 
ruby 2.0.0p451 (2014-02-24 revision 45167) [universal.x86_64-darwin13] 

所以我試圖做同樣的事情用命令sudo,但結果是一樣的。

$ sudo rbenv global 2.1.2 
$ ruby -v 
ruby 2.0.0p451 (2014-02-24 revision 45167) [universal.x86_64-darwin13] 

如何將我的全局ruby版本更改爲2.1.2?我從未安裝過rvm或其他ruby版本管理系統。

+0

這些問題可能會有用:http://stackoverflow.com/questions/13884110/cant-change-rbenv-global-ruby-version和http://stackoverflow.com/questions/10940736/rbenv-not-changing-ruby-version – Powers

回答

45

您是否將以下幾行添加到您的~/.bash_profile

export PATH="$HOME/.rbenv/bin:$PATH" 
eval "$(rbenv init -)" 

參見:https://github.com/sstephenson/rbenv#installation

+0

感謝您的回答!我的紅寶石變爲2.1.2! – qodot

+1

這個答案已經不再適用於最新版本的rbenv;查看更多最近的問題https://stackoverflow.com/questions/40199156/why-do-i-need-to-add-rbenv-bin-to-my-path#40204828 – dcorking

+0

@dcorking:我不確定我是否同意與您的評論。首先,目前rbenv的文檔仍然告訴添加該行。其次,該文件夾確實存在於我的機器上。我想這取決於某人如何安裝rbenv。 – spickermann

8

$ rbenv version型(不帶 「S」)

這是可能的輸出將顯示該文件的路徑被鎖定的版本

2.0.0p451 (set by /path/to/some/directory/.ruby-version) 

該文件甚至可能是您當前目錄中名爲.ruby-version的隱藏文件。如果它的情況下,只需刪除該文件.ruby-version

+0

在我的情況這是正確的答案,謝謝@Benj – valfer

2

運行變化紅寶石版本之前,下面的命令:

export PATH="$HOME/.rbenv/bin:$PATH" 
eval "$(rbenv init -)" 

它爲我:)

+0

重複的答案,請參閱@ spickermann的答覆。 – r3bo0t

1

我有同樣的問題(「紅寶石-v」顯示初始版本),但重新加載(退出/啓動)我的終端發揮了作用。

您是否先嚐試過?

0

卸載紅寶石,然後安裝agains:

brew uninstall -f ruby 
brew install ruby 

這兩行添加到您在〜/ .bash_profile

export PATH="$HOME/.rbenv/bin:$PATH" 
eval "$(rbenv init -)" 

重新打開控制檯,這就是它和運行

ruby -v