2015-08-29 161 views
0

我已經安裝了Ruby和gem並使用了bundle。但是,當我嘗試從Gemfile中安裝失敗:紅寶石gem環境的shell路徑不同於shell路徑

> which bundle                                            
/opt/local/bin/bundle 
> bundle install                                            
Your Ruby version is 2.1.7, but your Gemfile specified 2.1.3 

的Gemfile中指定的ruby '2.1.3'這是我在本地安裝:

> rbenv local 
2.1.3 
> rbenv global 
2.1.3 
> ruby -v                                             
ruby 2.1.3p242 (2014-09-19 revision 47630) [x86_64-darwin14.0] 
> which ruby                                             
/path/to/home/.rbenv/shims/ruby 

這一切似乎好爲止。系統紅寶石是2.1.7。

我的shell搜索路徑$PATH以墊片/path/to/home/.rbenv/shims:開頭。然而,當我轉儲gem environment那麼shell路徑有更多的條目之前墊片,其中一個包含系統紅寶石:

> echo $PATH                                             
/path/to/home/.rbenv/shims: ... 
> which gem                                             
/path/to/home/.rbenv/shims/gem 
> gem environment                                           
    ... 
    - SHELL PATH: 
    - /path/to/home/.rbenv/versions/2.1.3/bin 
    - /opt/local/bin    <- contains system ruby 2.1.7 
    - /path/to/home/.rbenv/shims <- $PATH starts here 
    - ... standard $PATH continues 

我懷疑這就是爲什麼從給定的Gemfile安裝不停地進行故障。有沒有適當的方法來修改gem的shell路徑,或者這個擴展路徑是從哪裏來的?

+0

哪個寶石;哪個包(即從哪裏拾取寶石和包),猜測這是系統,並引入系統紅寶石) – Mircea

+0

'gem'是來自與本地'ruby'相同文件夾的本地填充。 'bundle'是全球性的。我已經更新了相應的問題。 – Jens

回答