2014-02-26 142 views
8

Ruby 1.8和1.9安装在我的Ubuntu机器上。我刚从ppa:brightbox/ruby-ng-experimental安装了Ruby 2.0.0来安装需要2.0.0的bundle。现在,所有的1.8,1.9和2.0的安装虽然我不能告诉捆绑使用2.0:如何更改ruby版本

$ bundle install 
$ Your Ruby version is 1.9.3, but your Gemfile specified 2.0.0 

RVM无法更改版本:

$ rvm 2.0 
$ ruby-2.0.0-p451 is not installed. 
$ To install do: 'rvm install ruby-2.0.0-p451' 

RBENV也不能识别2.0:

$ rbenv global 2.0.0-p451 
$ rbenv: version `2.0.0-p451' not installed 
+0

你使用的是什么ruby版本管理器?你试试'rvm - 默认使用2.0.0'或者'rvm use 2.0.0'? –

+0

我试过'rvm 2.0'。 –

+1

你试过'rvm install ruby​​-2.0.0'吗?还提供了'RVM list' –

回答

9

在你的问题的评论中有很多建议,其中一些是先进的ish rbenv或rvm使用。

我的建议:决定如何管理多个红宝石 - 要么使用你的OS包管理器(在你的情况下,apt-get/PPA的东西)或rvm OR rbenv。

对于OS包管理器,应该有一种方法来明确地调用与红宝石版本(例如/usr/bin/ruby1.9.3),或研究并调用update-alternative。随着打包机配备宝石,您可能会在这里弄到翻译人员感到困惑。

对于rvm,更改红宝石版本rvm use ruby1.9.3

对于rbenv我其实并不知道,但它也应该是微不足道的(人们对此感到满意,它只是发生在我先尝试rvm,它的工作方式像一个魅力,从来没有评估过rbenv)。

我通常会安装一个“system”ruby(apt-get install ruby​​1.9.3),然后使用rvm。您仍然可以使用rvm use system切换到打包的“生产”红宝石。 更新2017年:我的印象是,大多数发行版都已经安装了ruby版本,所以你可能不需要手动安装它。运行ruby -vwhich ruby以查看是否已安装Ruby解释器。

在你的情况,我可能会卸载的所有系统RUBYS(apt-get purge ...),除去购电协议,删除你的〜/ .rvm和rbenv并从头开始(安装打包稳定的红宝石,然后rvm和使用RVM(RG rvm install 2.3.1)从那里开始)。

0

添加库 如果你正在使用Ubuntu 14.04(忠实的)或更高版本,那么你可以添加包库这样的:

$ sudo apt-get install software-properties-common 
$ sudo apt-add-repository ppa:brightbox/ruby-ng 
$ sudo apt-get update 

安装Ruby开关utiliy的

$ sudo apt-get install ruby-switch 

命令

ruby -v 
ruby-switch --list 

实施例

$ sudo ruby-switch --set ruby2.1 

希望这对你有所帮助。

来自:https://www.brightbox.com/docs/ruby/ubuntu/