使用rbenv来管理Ruby版本的方法_ruby专题

rbenv 用来管理多个版本的 ruby 在用户目录的安装和使用, 和 rvm 二选一使用. 具体区别 rbenv 的文档里有说明, 社区里也有讨论.
系统需求

OSX: 请找一个网好的地方, 从 app store 里下载 xcode.app, 安装完成后运行, 在设置中的 Downloads 里安装 Command Line Tools.

Linux: 请安装开发环境 (编译链接工具和 ruby 的依赖), 如果只要 jruby 有 jre 就可以了.
安装 rbenv

在 osx 上可以直接用 homebrew 安装, 下面是手动安装过程. (不用 zsh 的童鞋注意替换成自己的 shell 配置文件)

git clone git://github.com/sstephenson/rbenv.git ~/.rbenv
# 用来编译安装 ruby
git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
# 用来管理 gemset, 可选, 因为有 bundler 也没什么必要
git clone git://github.com/jamis/rbenv-gemset.git ~/.rbenv/plugins/rbenv-gemset
# 通过 gem 命令安装完 gem 后无需手动输入 rbenv rehash 命令, 推荐
git clone git://github.com/sstephenson/rbenv-gem-rehash.git ~/.rbenv/plugins/rbenv-gem-rehash
# 通过 rbenv update 命令来更新 rbenv 以及所有插件, 推荐
git clone https://github.com/rkh/rbenv-update.git ~/.rbenv/plugins/rbenv-update

 

然后把下面的代码放到 ~/.bash_profile 里

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

注意 Unubtu请放到 ~/.bashrc 里, zsh用户是 ~/.zshrc

然后重开一个终端就可以执行 rbenv 了.
使用
安装 ruby

rbenv install --list # 列出所有 ruby 版本
rbenv install 1.9.3-p392   # 安装 1.9.3-p392
rbenv install jruby-1.7.3  # 安装 jruby-1.7.3

列出版本

rbenv versions        # 列出安装的版本
rbenv version        # 列出正在使用的版本

设置版本

rbenv global 1.9.3-p392   # 默认使用 1.9.3-p392
rbenv shell 1.9.3-p392    # 当前的 shell 使用 1.9.3-p392, 会设置一个 `RBENV_VERSION` 环境变量
rbenv local jruby-1.7.3   # 当前目录使用 jruby-1.7.3, 会生成一个 `.rbenv-version` 文件

解决 MacOSX 下编译 Ruby 无法在 irb 中输入中文的方法

安装 homebrew 的 readline,再进入源码目录,重新编译安装 readline.bundle

brew install readline
brew link readline
cd src/ruby-1.9.3-p392/ext/readline
ruby extconf.rb --with-readline-dir=$(brew --prefix readline)
make install

rbenv 下的解决办法

brew install readline
CONFIGURE_OPTS="--disable-install-doc --with-readline-dir=$(brew --prefix readline)" rbenv install 1.9.3-p392

有关 ruby-2.0.0-p0 在 OS X 10.7+ 上的问题,参见:https://github.com/sstephenson/ruby-build/wiki
其他

rbenv rehash         # 每当切换 ruby 版本和执行 bundle install 之后必须执行这个命令
rbenv which irb       # 列出 irb 这个命令的完整路径
rbenv whence irb       # 列出包含 irb 这个命令的版本

rbenv 下使用 gemset
简介

rvm 中最方便的就是 gemset。实际上,rbenv 通过插件也可以使用 gemset
安装

MacOS 下使用 brew 的话,一个命令就搞定

brew install rbenv-gemset

使用
创建一个 gemset

rbenv gemset create 1.9.3-p392 ruby-china

具体使用方法

    在项目的根目录下,把想要使用的 gemset 名字放到 .rbenv-gemsets 文件中即可。有 .rbenv-gemsets 文件的情况下执行 bundle 命令就是对设置好的 gemset 进行操作

  echo ruby-china > .rbenv-gemsets

    当前目录下没有 .rbenv-gemsets 文件的情况下,执行 bundle 命令(没有指定 --path 参数的情况)时,是对当前版本的 ruby 版本的 gemset 。也就相当于 rvm 中 global gemset 的作用了

 

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索ruby
rbenv
rbenv 安装ruby、rbenv 更换ruby源、rbenv install ruby、ruby rbenv、rbenv 版本,以便于您获取更多的相关知识。

时间: 2024-09-15 01:01:50

使用rbenv来管理Ruby版本的方法_ruby专题的相关文章

ruby 流程控制 方法_ruby专题

这章我们将讨论更多的Ruby流程控制. case 我们用case语句测试有次序的条件.正如我们所见的,这和C,Java的switch相当接近,但更强大. ruby> i=8 ruby> case i     | when 1, 2..5     |   print "1..5\n"     | when 6..10     |   print "6..10\n"     | end 6..10    nil  2..5表示2到5之间的一个范围.下面的表达

ruby 迭代器使用方法_ruby专题

迭代器并不是Ruby发明的.它广泛地运用于各种面向对象语言.在Lisp中也有,只是不这么叫罢了.尽管如此,迭代器的概念并不为许多人熟悉,因此我们将在此做较为详细的介绍. 你知道,动词 iterate 的意思是做同一件事许多遍,因此,iterator就是用来将同一件事做许多次的东西. 当我们写代码时,我们需要各种环境下的循环.在C里,我们用for或者while.比如, char *str; for (str = "abcdefg"; *str != '\0'; str++) {   /*

ruby安装gem包失败的通用解决方法_ruby专题

ruby语言升级还是比较勤快的.但是数量众多的版本使得程序库的兼容性成了大问题.有些gem表示明确不支持某个特定版本以前的ruby,而有些gem则与较高的版本不兼容.再加上gem本身也有版本,简直是乱成了一锅粥.即使使用了rvm.rbenv之类ruby版本管理工具也避免不了掉入坑中.并且时不时的一些其它环境设置也给你捣乱.所以一般使用ruby程序时,对升级ruby版本或各种gem版本都是比较慎重的,避免一时手贱掉入坑中. 当然你也不能因此就做缩头乌龟,某些情况下还是不得不升级的.比如想使用rub

Ubuntu系统安装Ruby语言的三种方法_ruby专题

Ruby是一个开源的动态编程语言,它有优美的语法,可用于构建可伸缩的Web应用程序.ruby gems可以很好地增强Ruby开发者的开发效率. 要在Ubuntu系统上安装Ruby,有几种方法,每种方法都只需几步就能搞定. 方法一:使用apt-get安装可以直接使用两个命令完成Ruby的安装. 复制代码 代码如下: # sudo apt-get update # sudo apt-get install ruby 或者 复制代码 代码如下: # sudo apt-get install ruby2

在阿里云 (aliyun) 服务器上搭建Ruby On Rails环境_ruby专题

1.阿里云的一键安装web全环境 下载一键安装web全环境 sh.zip 压缩包 上传至服务器,解压.执行脚本,具体步骤详见这里 $ mv sh.zip /home/tmp/ & cd /home/tmp $ unzip sh.zip $ chmod -R 777 sh & cd sh # 任意选择一种方法执行脚本 # 方法一 $ ./install.sh # 方法二 $ ./install_nginx_xxx.sh $ ./install_mysql_xxx.sh 2.安装RVM与指定的

快速正确的安装 Ruby, Rails 运行环境_ruby专题

如何快速正确的安装 Ruby, Rails 运行环境 对于新入门的开发者,如何安装 Ruby, Ruby Gems 和 Rails 的运行环境可能会是个问题,本页主要介绍如何用一条靠谱的路子快速安装 Ruby 开发环境. 次安装方法同样适用于产品环境! 系统需求首先确定操作系统环境,不建议在 Windows 上面搞,所以你需要用: •Mac OS X •任意 Linux 发行版本(Ubuntu,CentOS, Redhat, ArchLinux ...) 强烈新手使用 Ubuntu 省掉不必要的

CentOS 6.3下编译安装Ruby 2.0笔记_ruby专题

LINUX操作系统: CentOS6.3 64bit Ruby: ruby-2.0.0-p247 一.安装开发包(使用默认CENTOS更新源) 复制代码 代码如下: # yum install openssl* openssl-devel zlib-devel gcc gcc-c++ make autoconf readline-devel curl-devel expat-devel gettext-devel 二.关闭iptables和SELINUX 复制代码 代码如下: # service

使用C++来编写Ruby程序扩展的教程_ruby专题

Ruby 最酷的功能之一就是使用 C/C++ 定义的应用程序编程接口 (API) 扩展它.Ruby 提供了 C 头文件 ruby.h,它随附提供了许多功能,可使用这些功能创建 Ruby 类.模块和更多内容.除了头文件,Ruby 还提供了其他几个高层抽象来扩展基于本地 ruby.h 构建的 Ruby,本文要介绍的是 Ruby Interface for C++ Extensions 或 Rice.创建 Ruby 扩展 在进行任何 Ruby 的 C API 或 Rice 扩展前,我想明确地介绍一下创

举例讲解Ruby中require的使用方法_ruby专题

同一目录下的文件,如/usr/local/ruby/foo.rb与/usr/local/ruby/bar.rb两个文件. 如果直接在foo.rb中   require 'bar' 执行时会报找不到bar.rb错误. 这是因为运行   /home/oldsong$ ruby /usr/local/ruby/foo.rb 时会在ruby安装的lib目录和/home/oldsong/目录下查找bar.rb.而不会去rb文件的目录/usr/local/ruby/下查找. 所以除引用系统rb外,requi