2015-12-08 169 views
0

請原諒我,如果有重複,但我真的不知道要搜索什麼。我正在用Ruby on Rails的一個項目,做任何事情有關,當我得到這個消息,(即:耙,導軌,RSpec的,等等):控制紅寶石版本

你的Ruby版本是2.1.5,但你的Gemfile指定2.2.3

現在,我已經安裝了RVM,我可以通過發出命令

bash --login

編輯爲清楚起見

解決這個問題

運行上述命令確實使用Ruby 2.2.3來執行命令。

/編輯

那麼那些給指令工作。我想要做的是完全刪除版本2.1.5--只剩下2.2.3。我已經走過了這麼多種不同的方式,但是Ruby對我來說是非常陌生的領域,所以我不知道該怎麼做。我確定我的機器上至少安裝了三次Ruby - 可能是我知道的兩個版本中的兩個重複 - 我只想要一個版本,並且爲了避免需要輸入bash --login命令來運行我的項目。

我正在運行Ubuntu 15.10,並且至少對此工作有一些瞭解。如果有人能夠引導我去除與Ruby on Rails相關的所有內容,然後只安裝Ruby 2.2.3和Rails 4.2.4,我將非常感激。讓我知道這是不是這個問題的適當交換。它似乎不適合Ubuntu或Sysadmin。

回答

2

你需要做的不是試圖消除ruby 2.1.5什麼。

你有RVM,所以用它來獲得你想要的新版本。

在此之後,你現在有兩個選擇:

1)make the newly installed version the global default version你的機器上,

2)create a gemset for your project,並指定項目所需的紅寶石版本。

其中任何一個都可以解決您的問題。

+0

gemset究竟是什麼?或者,我該如何更改全局默認值?我已經嘗試過'update-alternatives',但它表示Ruby沒有可用的替代方法,而且符號鏈接黑客也無法正常工作。 這是我的gemfile:[鏈接](http://i.snag.gy/C6knh.jpg) –

+1

我剛剛在第二個選項中包含了一個gemsets鏈接。請檢查一下。 –

+1

而且我只是提供了一個鏈接,使Ruby版本成爲默認版本。 –

0

您必須修改Gemfile。

http://bundler.io/v1.3/gemfile_ruby.html

+0

我被鎖定在使用版本2.2.3。更改gemfile使用2.1.5不會解決列出的任何問題,除非我嚴重誤解您的建議。 –

+0

好吧,如果你按照上面的鏈接,那麼你正在設置ruby版本捆綁器將在Gemfile中使用(或通過.rvm_version文件)。所以要使用該版本,你必須在你的gem命令前加上「bundle exec」,否則你將會使用你的系統版本的ruby。你不需要卸載你的系統紅寶石。 – engineerDave

+0

我根本不需要2.1.5版本。我沒有用。我想將我的系統ruby更改爲2.2.3,而不是更改項目。 l: –