和大多数编程语言一样,Ruby 利用了大量的第三方库。

几乎所有这些库都以 gem 的形式发布,这是一种打包的库或应用程序,可以使用名为 RubyGems 的工具安装。

RubyGems 是一个 Ruby 打包系统,旨在方便库的创建、共享和安装(在某些方面,它类似于发行版打包系统,例如 apt-get,但针对的是 Ruby 软件)。自 1.9 版本以来,Ruby 默认附带 RubyGems,之前的 Ruby 版本需要 手动安装 RubyGems。

其他一些库以 源代码 的存档(.zip 或 .tar.gz)目录形式发布。安装过程可能有所不同,通常会提供带有说明的 READMEINSTALL 文件。

让我们来看看如何查找库并将其安装以供自己使用。

查找库

库的主要托管地是 RubyGems.org,这是一个公开的 gem 存储库,可以在其中搜索 gem 并将其安装到您的计算机上。您可以使用 RubyGems 网站浏览和搜索 gem,也可以使用 gem 命令。

使用 gem search -r,您可以搜索 RubyGems 的存储库。例如,gem search -r rails 将返回与 Rails 相关的 gem 列表。使用 --local (-l) 选项,您将在本地搜索已安装的 gem。要安装 gem,请使用 gem install [gem]。浏览已安装的 gem 可以使用 gem list 完成。有关 gem 命令的更多信息,请参见下文或访问 RubyGems 的文档

还有其他库的来源。GitHub 是主要的 Ruby 相关内容存储库。通常,gem 源代码将托管在 GitHub 上,同时作为成熟的 gem 发布到 RubyGems.org。

The Ruby Toolbox 是一个旨在轻松探索开源 Ruby 项目的项目。它针对各种常见的开发任务进行分类,收集有关项目的大量信息,例如发布和提交活动或依赖项,并根据项目在 RubyGems.org 和 GitHub 上的受欢迎程度对项目进行评级。这使得查找解决特定问题的 gem 变得容易,例如 Web 框架、文档工具和代码质量库。

关于 RubyGems 的一些补充说明

这是对您日常使用的 gem 命令的快速回顾。更详细的文档可用于涵盖此打包系统的所有方面。

搜索可用的 gem

search 命令可用于基于字符串查找 gem。名称以指定字符串开头的 gem 将在返回中列出。例如,要搜索与 “html” 相关的 gem

$ gem search -r html

*** REMOTE GEMS ***

html-sample (1.0, 1.1)

--remote / -r 标志表示我们想要检查官方 RubyGems.org 存储库(默认行为)。使用 --local / -l 标志,您将在本地搜索已安装的 gem。

安装 gem

一旦您知道要安装哪个 gem,例如流行的 Ruby on Rails 框架

$ gem install rails

您甚至可以使用 --version / -v 标志安装库的特定版本

$ gem install rails --version 5.0

列出所有 gem

对于本地安装的所有 gem 的列表

$ gem list

要获取 RubyGems.org 上所有可用 gem 的(非常长的)列表

$ gem list -r

帮助!

文档可在您的终端中使用

$ gem help

例如,gem help commands 非常有用,因为它会输出所有 gem 命令的列表。

制作您自己的 gem

RubyGems.org 上有关于此主题的多个指南。您可能还需要研究 Bundler,这是一个通用工具,可帮助您管理应用程序的依赖关系,并且可以与 RubyGems 一起使用。