抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

Jekyll博客基于Ruby开发,需要安装Ruby开发和运行环境。
本篇介绍Ruby和Ruby环境搭建。

Ruby

Ruby 简介

Ruby是一种纯粹的面向对象编程语言。它由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)创建于1993年。您可以在 www.ruby-lang.org 的 Ruby 邮件列表上找到松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)的名字。在 Ruby 社区,松本也被称为马茨(Matz)。

Ruby 是"程序员的最佳朋友"。

Ruby 的特性与 Smalltalk、Perl 和 Python 类似。Perl、Python 和 Smalltalk 是脚本语言。Smalltalk 是一个真正的面向对象语言。Ruby,与 Smalltalk 一样,是一个完美的面向对象语言。使用 Ruby 的语法比使用 Smalltalk 的语法要容易得多。

Gem介绍:

Gem是一个管理Ruby库和程序的标准包,它通过Ruby Gem(如 http://rubygems.org/ )源来查找、安装、升级和卸载软件包,非常的便捷。

Ruby 1.9.2版本默认已安装Ruby Gem,如果你使用其它发行版本,请参考“如何安装Ruby Gem”。

Ruby gem包的安装方式:

所有的gem包,会被安装到 /[Ruby root]/lib/ruby/gems/[ver]/ 目录下,这其中包括了Cache、doc、gems、specifications 4个目录,cache下放置下载的原生gem包,gems下则放置的是解压过的gem包。

当安装过程中遇到问题时,可以进入这些目录,手动删除有问题的gem包,然后重新运行 gem install [gemname] 命令即可。

Jekyll就是通过Gem来管理安装,理解为nodejs中的npm安装。

Ruby Gem命令详解:

$ gem --version (查看gem版本)

$ gem sources(查看数据源)

$gem sources -l 查看版本

$ gem sources --remove https://rubygems.org/(删除数据源)

$ gem sources -a https://ruby.taobao.org/(添加数据源)

$ gem update --system(更新Gem自身,注意:在某些linux发行版中为了系统稳定性此命令禁止执行)

$ gem search 软件包关键字(搜索软件包)

$ gem install [gemname] 从Gem源安装gem包

$ gem install [gemname] [gemname] 安装多个包

​ 例:gem install bundler jekyll 安装bundler和jekyll

$ gem install -l [gemname].gem(从本机安装gem包)

$ gem install [gemname] --version=[ver](安装指定版本的gem包)

$ gem update (更新所有已安装的gem包)

$ gem update [gemname](更新指定的gem包) // 注意:gem update [gemname]不会升级旧版本的包,此时你可以使用 gem install [gemname] --version=[ver]代替

$ gem uninstall [gemname](删除指定的gem包,注意此命令将删除所有已安装的版本)

$ gem uninstall [gemname] --version=[ver](删除某指定版本gem)

$ gem list [–local](查看本机已安装的所有gem包)

DevKit 介绍

DevKit 是一个在 Windows 上帮助简化安装及使用 Ruby C/C++ 扩展如 RDiscount 和 RedCloth 的工具箱。安装在ruby中。

下载安装

Windows版本

http://rubyinstaller.org/downloads/

心得:windows下安装的高版本Ruby+Devkit包含了Ruby运行环境和gem管理包。Devkit工具包,是选择安装的。

  1. 选择WITH DEVKIT 下载。

image-20201108180414002

  1. 选择添加到环境变量中。

image-20201108181342995

  1. 选择3
    image-20201108181737622

  2. 验证

    • ruby -v
      验证ruby安装。
      image-20201108184705851

    • gem -v
      验证gem安装。
      image-20201108184718263

    • gem install rdiscount --platform=ruby

      如果能安装rdiscount成功说明安装DevKit成功。
      image-20201108184444924

配置:

​ 如果是在墙内,需要切换安装源到https://gems.ruby-china.com/。墙外请忽略。

​ 切换安装源

gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/

Bundler

官网

简介:

Bundler: 管理 Ruby 项目中 gem 依赖的最好工具

Bundler 能够跟踪并安装所需的特定版本的 gem包,以此来为 Ruby 项目提供一致的运行环境。

Bundler 是 Ruby 依赖管理的一根救命稻草,它可以保证你所要依赖的 gem 如你所愿地出现 在开发、测试和生产环境中。 利用 Bundler 启动项目简单到只用一条命令:bundle install

使用方法:

Bundler 使用起来非常简单!打开命令行窗口并运行如下命令:

1
$ gem install bundler

在 Ruby 项目的根目录下新建 Gemfile 文件并指定所需的依赖:

1
2
3
4
source 'https://rubygems.org'
gem 'nokogiri'
gem 'rack', '~> 2.0.1'
gem 'rspec'

深入了解:Gemfiles

从指定的 gem 源安装所需依赖:

1
2
$ bundle install
$ git add Gemfile Gemfile.lock

心得感悟:

每次下载了博客模板后,运行一次bundle install安装gem依赖搭建环境。bundler会会根据配置文件中的源和依赖进行安装。

所以博客模板中使用了Gemfile,并且配置了jekyll的版本,jekyll也可以通过bundle来安装。

image-20201118084304676

❤bundle可以理解为封装了gem命令,用来读取本地化文件配置转换为gem命令进行执行的工具。批量管理gem包

评论