Ruby 开发环境搭建
本章将引导你完成安装 Ruby、选择合适的文本编辑器或集成开发环境(IDE),以及为 Ruby 开发配置命令行接口的整个流程。完成本章学习后,你将拥有一个功能完备、随时可以编写首个 Ruby 程序的工作环境。
1. 安装 Ruby
根据你所使用的操作系统,安装 Ruby 的方法有多种。我们将涵盖 macOS、Windows 和 Linux 最常见的安装方法。
1.1 macOS 上的安装
使用版本管理器(推荐)
在 macOS 上,推荐使用像 rbenv 或 rvm 这样的版本管理器。这些工具允许你轻松地在不同的 Ruby 版本之间切换,这对于管理依赖关系和处理多个项目来说必不可少。
选项 A:使用 rbenv
1. 安装 rbenv:
brew install rbenv(如果你还没有安装 Homebrew,可以前往 https://brew.sh/ 获取。)
2. 初始化 rbenv:
将以下代码行添加到你的 ~/.zshrc 或 ~/.bashrc 文件中:
eval "$(rbenv init -)"然后,重启终端或运行 source ~/.zshrc(或 source ~/.bashrc)。
3. 安装 Ruby:
rbenv install 3.2.2 # 替换为你想要的 Ruby 版本4. 设置全局 Ruby 版本:
rbenv global 3.2.2 # 替换为你已安装的 Ruby 版本5. 验证安装:
ruby -v这应该会显示你刚才安装的 Ruby 版本号。
选项 B:使用 rvm
1. 安装 GPG 密钥:
gpg --keyserver keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DB0C2
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DB0C22. 安装 rvm:
curl -sSL https://get.rvm.io | bash -s stable3. 加载 rvm:
source ~/.rvm/scripts/rvm4. 安装 Ruby:
rvm install 3.2.2 # 替换为你想要的 Ruby 版本5. 设置默认 Ruby 版本:
rvm use 3.2.2 --default # 替换为你已安装的 Ruby 版本6. 验证安装:
ruby -v注意:直接安装(不推荐用于开发)
虽然 macOS 自带了预装的 Ruby 版本,但通常不推荐将它用于开发。这是因为系统自带的 Ruby 往往版本较旧,并且可能与系统依赖产生冲突。不过,如果你想查看预装版本,可以运行:ruby -v。
1.2 Windows 上的安装
使用 RubyInstaller
在 Windows 上安装 Ruby 最简单的方法是使用 RubyInstaller。
1. 下载 RubyInstaller: 前往 https://rubyinstaller.org/ 并下载最新版的 Windows RubyInstaller。选择与你系统架构匹配的版本(32位或64位)。
2. 运行安装程序: 运行下载的可执行文件并遵循安装提示。
- 务必勾选 "Add Ruby executables to your PATH"(将 Ruby 可执行文件添加到环境变量 PATH 中)。这允许你在命令行中直接运行 Ruby 命令。
- 同样推荐勾选 "Associate .rb and .rbw files with this Ruby installation"(将 .rb 和 .rbw 文件与此 Ruby 安装关联)。
- 安装程序还会询问你是否要安装 MSYS2。强烈建议安装它,因为它提供了一个类似 Unix 的环境,这对于安装带有原生 C 扩展的 gems 非常有用。
3. 验证安装:
打开一个新的命令提示符(cmd)或 PowerShell 窗口并运行:
ruby -v1.3 Linux 上的安装
安装过程因你使用的 Linux 发行版而异。
Debian / Ubuntu
1. 更新软件包列表:
sudo apt update2. 安装 Ruby:
sudo apt install ruby-full3. 验证安装:
ruby -vFedora / CentOS
1. 安装 Ruby:
sudo dnf install ruby2. 验证安装:
ruby -v使用版本管理器(推荐)
与 macOS 类似,在 Linux 上也非常推荐使用 rbenv 或 rvm 等版本管理器。你可以参考 macOS 部分的说明,并根据你的发行版调整包管理器的命令(例如,在 Debian/Ubuntu 上使用 apt 替代 brew)。
2. 选择文本编辑器或 IDE
一款优秀的文本编辑器或集成开发环境(IDE)能够显著提升你的 Ruby 开发体验。以下是一些主流选择:
2.1 常见文本编辑器
- Visual Studio Code (VS Code): 一款免费、开源的编辑器,通过插件对 Ruby 提供了极佳的支持。它提供语法高亮、代码补全、调试和 Git 集成等功能。
- Sublime Text: 一款广受欢迎的轻量级编辑器,拥有丰富的插件和自定义选项。以速度快和极具灵活性著称。
- Atom: 另一款由 GitHub 开发的免费、开源编辑器。具有高度的可定制性,并拥有庞大的用户和开发者社区。
2.2 常见 IDE
- RubyMine: 一款专门为 Ruby 和 Rails 开发打造的商业 IDE。它提供高级功能,如代码分析、重构、调试和测试工具。
- NetBeans: 一款免费、开源的 IDE,支持包括 Ruby 在内的多种语言。它提供代码补全、调试和项目管理等功能。
2.3 配置 VS Code 进行 Ruby 开发
VS Code 因其灵活性和丰富的扩展支持,是 Ruby 开发的绝佳选择。以下是配置步骤:
1. 安装 Ruby 扩展:
- 打开 VS Code。
- 进入扩展视图 (快捷键
Ctrl+Shift+X或Cmd+Shift+X)。 - 搜索 "Ruby" 并安装由 Peng Lv 开发的扩展。该扩展提供 Ruby 语言支持,包括语法高亮、代码补全和代码检查(linting)。
2. 安装 Ruby LSP 扩展:
- 搜索 "Ruby LSP" 并安装由 Shopify 开发的扩展。该扩展为 Ruby 提供语言服务器支持,包括代码补全、转到定义和查找所有引用。
3. 安装调试器扩展:
- 搜索 "Ruby Debugger" 并安装由 Koichi Sasada 开发的扩展。该扩展为 Ruby 提供调试支持。
4. 配置 Ruby LSP 扩展:
- 打开 VS Code 设置 (文件 > 首选项 > 设置)。
- 搜索 "ruby lsp"。
- 确保勾选了 Ruby LSP > Enabled 设置。
- 你可能还需要配置其他设置,例如 Ruby 可执行文件的路径。
5. 安装 debug gem:
- 在 VS Code 中打开终端 (视图 > 终端)。
- 运行命令
gem install debug。
3. 命令行接口 (CLI) 的基础配置
命令行接口(CLI)是 Ruby 开发中不可或缺的工具。它允许你运行 Ruby 程序、管理 gems 以及与系统交互。
3.1 基础命令
ruby:执行 Ruby 程序。例如,ruby my_program.rb将运行my_program.rb文件。irb:启动交互式 Ruby Shell (Interactive Ruby Shell),允许你以交互方式执行 Ruby 代码。我们将在下一章详细介绍 IRB。gem:管理 Ruby gems(软件包)。例如,gem install rails将安装 Rails 框架。ri:访问 Ruby 文档。例如,ri String将显示String类的相关文档。
4. 使用 Gems(包管理器)
Gems 是预先打包好的 Ruby 库,提供可复用的代码和功能。它们通过 gem 命令进行管理。
4.1 安装、列出与卸载 Gems
安装 Gems
要安装一个 gem,请使用 gem install 命令后跟 gem 的名称:
gem install nokogiri这将会安装 Nokogiri,它是一个用于解析 HTML 和 XML 的流行库。
列出已安装的 Gems
要查看所有已安装的 gems,请使用 gem list 命令:
gem list这将在终端中显示你系统上安装的所有 gems 列表。
卸载 Gems
要卸载一个 gem,请使用 gem uninstall 命令后跟 gem 的名称:
gem uninstall nokogiri这将会卸载 Nokogiri gem。
4.2 示例:安装并使用一个 Gem
让我们来安装并使用 colorize gem,它可以让你在终端输出中添加颜色。
1. 安装 colorize gem:
gem install colorize2. 创建一个名为 color_example.rb 的 Ruby 文件,输入以下内容:
require 'colorize' # 引入 colorize 库
puts "这是红色的字".colorize(:red)
puts "这是蓝色的字".colorize(:blue)
puts "这是绿色的字".colorize(:green)3. 运行该 Ruby 文件:
ruby color_example.rb这将在你的终端中显示带有颜色的文本。