1、RVM 简介

1.1 Ruby 简介

  • Ruby 是一种面向对象的脚本语言,简单易用,功能强大。能跨平台和可移植性好等等。其实就是种脚本语言。

  • Ruby 的软件源使用的是亚马逊的云服务,国内网络环境下载时可能会出现各种不稳定和超时,所以自带的需要翻墙。

    • 可以将官方 ruby 源替换成国内淘宝 ruby:https://ruby.taobao.org/

    • 或者是 China ruby 源:https://gems.ruby-china.org/

    • 据消息了解,2016.06 淘宝源暂停维护了,建议使用 China ruby 源。

1.2 Rvm 简介

  • Rvm 全称 Ruby Version Manager,是安装和管理 ruby 的一种工具,包括 Ruby 的版本管理和 Gem 库管理(gemset)。

    • RVM is a command-line tool which allows you to easily install, manage, and work with multiple ruby environments from interpreters to sets of gems.

2、RVM 环境安装

2.1 检查是否存在 rvm 环境

  • 在终端输入以下指令。

    # 查看 rvm 版本
    $ rvm -v
    • 输出结果,不存在 rvm 环境

      -bash: rvm: command not found
    • 输出结果,存在 rvm 环境

      rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]

2.2 安装配置 rvm 环境

  • 如果不存在 rvm 环境,在终端输入以下指令安装。

    # 安装 rvm
    curl -L get.rvm.io | bash -s stable
    • curl 是利用 URL 语法在命令行方式下工作的开源文件传输工具。它被广泛应用在 Unix、多种 Linux 发行版中,并且有 DOS 和 Win32、Win64 下的移植版本。

    • 终端输出

        % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
      Dload Upload Total Spent Left Speed
      100 194 100 194 0 0 203 0 --:--:-- --:--:-- --:--:-- 203
      100 24090 100 24090 0 0 11046 0 0:00:02 0:00:02 --:--:-- 34864
      Downloading https://github.com/rvm/rvm/archive/1.29.3.tar.gz
      Downloading https://github.com/rvm/rvm/releases/download/1.29.3/1.29.3.tar.gz.asc
      Found PGP signature at: 'https://github.com/rvm/rvm/releases/download/1.29.3/1.29.3.tar.gz.asc',
      but no GPG software exists to validate it, skipping. Installing RVM to /Users/haiqianj/.rvm/
      Adding rvm PATH line to /Users/haiqianj/.profile /Users/QianChia/.mkshrc /Users/haiqianj/.bashrc /Users/QianChia/.zshrc.
      Adding rvm loading line to /Users/QianChia/.profile /Users/QianChia/.bash_profile /Users/haiqianj/.zlogin.
      Installation of RVM in /Users/haiqianj/.rvm/ is almost complete: * To start using RVM you need to run `source /Users/QianChia/.rvm/scripts/rvm`
      in all your open shell windows, in rare cases you need to reopen all shell windows. * WARNING: '~/.profile' file found. To load it into your shell, add the following line to '/Users/QianChia/.bash_profile': source ~/.profile
  • 继续在终端输入以下指令,配置 rvm 环境。

    # 配置 rvm 环境
    $ source ~/.bashrc
    $ source ~/.bash_profile
    • 完成后,再次输入 rvm -v 指令即可看到已成功安装。

3、Ruby 检查更新

3.1 检查 ruby 版本环境

  • 在终端输入以下指令。

    # 查看 ruby 版本
    $ ruby -v
    • 输出结果

      ruby 2.3.3p222 (2016-11-21 revision 56859) [universal.x86_64-darwin17]

3.2 更新 ruby 版本环境

  • 在终端输入以下指令。

    # 查询已知的 ruby 环境
    $ rvm list known
    • 输出结果

      # MRI Rubies
      [ruby-]1.8.6[-p420]
      [ruby-]1.8.7[-head] # security released on head
      [ruby-]1.9.1[-p431]
      [ruby-]1.9.2[-p330]
      [ruby-]1.9.3[-p551]
      [ruby-]2.0.0[-p648]
      [ruby-]2.1[.10]
      [ruby-]2.2[.7]
      [ruby-]2.3[.4]
      [ruby-]2.4[.1]
      ruby-head
      ...
  • 在终端输入以下指令,更新 ruby 版本环境。

    # 指定 ruby 版本进行更新( 此处按照 ruby 2.4.1 版本进行更新 )
    $ rvm install 2.4.1
    • 等待一段时间后,输出以下结果,更新完成。

      Searching for binary rubies, this might take some time.
      No binary rubies available for: osx/10.13/x86_64/ruby-2.4.1.
      Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
      Checking requirements for osx.
      Certificates bundle '/usr/local/etc/openssl@1.1/cert.pem' is already up to date.
      Requirements installation successful.
      Installing Ruby from source to: /Users/QianChia/.rvm/rubies/ruby-2.4.1, this may take a while depending on your cpu(s)...
      ruby-2.4.1 - #downloading ruby-2.4.1, this may take a while depending on your connection...
      ** Resuming transfer from byte position 1048576
      % Total % Received % Xferd Average Speed Time Time Time Current
      Dload Upload Total Spent Left Speed
      100 10.9M 100 10.9M 0 0 43161 0 0:04:26 0:04:26 --:--:-- 37120
      ruby-2.4.1 - #extracting ruby-2.4.1 to /Users/QianChia/.rvm/src/ruby-2.4.1....
      ruby-2.4.1 - #applying patch /Users/QianChia/.rvm/patches/ruby/2.4.1/random_c_using_NR_prefix.patch.
      ruby-2.4.1 - #configuring..................................................................
      ruby-2.4.1 - #post-configuration.
      ruby-2.4.1 - #compiling..............................................................
      ruby-2.4.1 - #installing.......
      ruby-2.4.1 - #making binaries executable..

3.3 检查 rubygems 版本环境

  • 在终端输入以下指令。

    # 查看 rubygems 版本
    $ gem -v
    • 输出结果

      2.5.2

3.4 更新 rubygems 版本环境

  • 在终端输入以下指令。

    # 更新 rubygems 版本
    $ sudo gem update --system
    • 等待一段时间后,输出以下结果,更新完成。

      Updating rubygems-update
      Fetching: rubygems-update-2.6.14.gem (100%)
      Successfully installed rubygems-update-2.6.14
      Parsing documentation for rubygems-update-2.6.14
      • 实际打印可能与此不同,但是成功了就会显示 Successfully。
      Latest version currently installed. Aborting.
      • 此种提示,表示已经是最新的 rubygems 环境。

3.5 检查更新 ruby 源

  • Ruby 的软件源使用的是亚马逊的云服务,国内网络环境下载时可能会出现各种不稳定和超时,所以自带的需要翻墙。由于 2016.06 淘宝源暂停维护了,建议使用 China ruby 源。

    • 官方 ruby 源:https://rubygems.org/
    • 淘宝 ruby 源:https://ruby.taobao.org/
    • China ruby 源:https://gems.ruby-china.org/
  • 在终端输入以下指令,检查 ruby 源。

    # 检查 ruby 源
    $ gem sources -l
    • 输出

      *** CURRENT SOURCES ***
      
      https://rubygems.org/
  • 如果使用的是官方 ruby 源,继续输入以下指令删除ruby 源。

    # 删除 ruby 源
    $ sudo gem sources --remove https://rubygems.org/
    • 移除结果

      https://rubygems.org/ removed from sources
  • 替换添加国内镜像源 ruby-china 源

    # 添加 ruby 源
    $ sudo gem sources --add https://gems.ruby-china.org/
    • 替换结果

      https://gems.ruby-china.org added to sources
  • 再次检查此时的 ruby 源,已经变成了 ruby-china 源。

RVM Ruby 管理工具的更多相关文章

  1. RHEL7在线安装rvm(ruby管理包)

    ttp://blog.csdn.net/lixwjava/article/details/50408070 安装curl sudo yum install curl 然后在在终端中输入命令 curl  ...

  2. RVM 多版本Ruby管理-Gentoo

    发现了一个非常Amzaing的Ruby的工具RVM,用于安装和管理Ruby的多个版本.相比较于直接在系统中安装不同版本的Ruby,然后使用时切换到对应的版本,这种方式实在是酷毙了,使ruby安装变得非 ...

  3. iOS开发者的管理工具-CocoaPods安装

    1. 安装 Ruby 对于iOS开发者,CocoaPods是最方便使用的第三方管理工具了,但是怎么安装CocoaPods呢,安装CocoaPods之前,要确保mac已经安装上Ruby,但在安装Ruby ...

  4. iOS包管理工具Cocoapods的安装与使用

    转自:http://www.sxt.cn/u/10014/blog/6448 在我们开发移动应用的时候,一般都会使用到第三方工具,而由于第三方类库的种类繁多,我们在项目中进行管理也会相对麻烦,所以此时 ...

  5. cocoapods iOS类库管理工具的安装与使用

    CocoaPods是一个管理Swift和Objective-C的Cocoa项目的依赖工具.他可以优雅地帮助你扩展你的项目.简单的说,就是替你管理Swift和Objective-C的Cocoa项目的第三 ...

  6. Mac下的类似apt-get的包管理工具Homebrew(笔记)

    对于一个习惯了在 Ubuntu 的终端上通过 apt-get 来安装工具软件的我来说,也希望在Mac上找到类似的工具,能很方便的一条命令就能安装所需的软件,而不用手工的去查找下载编译,或者是折腾安装所 ...

  7. 【转载】Python的包管理工具Pip

    接触了Ruby,发现它有个包管理工具RubyGem很好用,并且有很完备的文档系统http://rdoc.info 发现Python下也有同样的工具,包括easy_install和Pip.不过,我没有细 ...

  8. Python的包管理工具Pip (zz )

    Python的包管理工具Pip 接触了Ruby,发现它有个包管理工具RubyGem很好用,并且有很完备的文档系统http://rdoc.info 发现Python下也有同样的工具,包括easy_ins ...

  9. Mac Pro 安装 Homebrew 软件包管理工具

    Linux系统有个让人蛋疼的通病,软件包依赖,好在当前主流的两大发行版本都自带了解决方案,Red hat有 yum,Ubuntu有 apt-get. Mac os 中没有类似的东东,不过有第三方库支持 ...

随机推荐

  1. [Functional Programming] Daggy

    const daggy = require('daggy'); const {tagged, taggedSum} = daggy; const Coord = daggy.tagged('Coord ...

  2. GPUImage API文档之GPUImageFramebufferCache类

    GPUImageFramebufferCache类负责管理GPUImageFramebuffer对象,是一个GPUImageFramebuffer对象的缓存. 方法 - (GPUImageFrameb ...

  3. Mybatis源码分析之Cache一级缓存原理(四)

    之前的文章我已经基本讲解到了SqlSessionFactory.SqlSession.Excutor以及Mpper执行SQL过程,下面我来了解下myabtis的缓存, 它的缓存分为一级缓存和二级缓存, ...

  4. SpringBoot添加对Log4j2的支持

    1.在添加对Log4j2的支持前,需要先把SpringBoot默认使用的Logback日志框架排除,修改pom.xml文件: <dependency> <groupId>org ...

  5. Python 模块浅析

    如果你退出Python解释器重新进入,以前创建的一切定义(变量和函数)就全部丢失了.因此,如果你想写一些长久保存的程序,最好使用一个文本编辑器来编写程序,把保存好的文件输入解释器. 我们称之为创建一个 ...

  6. 再玩 DevStack(Mitaka版)- 基于 trystack.cn 源

    曾经就写过一篇关于DevStack安装OpenStack的文章< 使用 DevStack 高速部署 OpenStack 开发环境 >,时过境迁,如今有更好的方式来实现.想到曾经的复杂性,认 ...

  7. 算法笔记_225:数字密码发生器(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 在对银行账户等重要权限设置密码的时候,我们常常遇到这样的烦恼:如果为了好记用生日吧,容易被破解,不安全:如果设置不好记的密码,又担心自己也会忘记:如 ...

  8. 用python解析pdf中的文本与表格【pdfplumber的安装与使用】

    我们接触到的很多文档资料都是以pdf格式存在的,比如:论文,技术文档,标准文件,书籍等.pdf格式使得用机器从中提取信息格外困难. 为了解决这个问题,我找到了几种解决方案,最后选择了python上的p ...

  9. [转] libtool的作用及应用

    今天使用 autoconf 的时候遇到一个 libtool 的问题,觉得这个东西挺有意思,找了个文档过来,暂时记录. 转自:http://blog.csdn.net/larntin2002/artic ...

  10. 元素高度、宽度获取 style currentStyle getComputedStyle getBoundingClientRect

    1.示例代码 (1)html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...