gem是Ruby的官方包管理器,用于安装、查询、更新和卸载Ruby库(gem包),功能类似apt或pip;随Ruby(2.6+)默认安装,可通过ruby --version和gem --version验证,支持源切换、Bundler项目级依赖管理等。

Gem 是 Ruby 的官方包管理器,不是 Linux 自带的工具,而是随 Ruby 一起安装的组件。只要系统中已正确安装 Ruby(建议 2.6+),gem 命令通常就可用。它功能类似 apt 或 pip,专用于安装、查询、更新和卸载 Ruby 库(即 gem 包)。
确认 Gem 是否就绪
先检查 Ruby 和 gem 是否正常工作:
- 运行
ruby --version确认 Ruby 已安装 - 运行
gem --version查看 gem 版本;若提示命令未找到,说明 Ruby 未自带 gem 或路径未加入环境变量 - 常见修复:用系统包管理器安装(如 CentOS/RHEL:
yum install rubygems;Ubuntu/Debian:apt install ruby-full)
常用 Gem 操作命令
所有操作默认面向当前用户。如需全局安装(影响所有用户),通常需加 sudo(但不推荐在生产环境随意使用):
-
安装包:例如
gem install rails;指定版本用gem install bundler --version 2.4.22 -
搜索包:例如
gem search http列出名称含 “http” 的 gem -
查看已装包:运行
gem list;加-i可模糊匹配,如gem list -i rack -
查看包详情:例如
gem info sinatra显示版本、作者、依赖等 -
卸载包:例如
gem uninstall nokogiri;卸载特定版本加--version=1.15.0 -
更新单个包:例如
gem update jekyll;更新全部用gem update(慎用,可能引发兼容问题)
更换源加速国内访问
默认源 https://rubygems.org 在国内常慢或超时。推荐切换为清华或阿里源:
- 查看当前源:
gem sources -l - 删除默认源:
gem sources --remove https://rubygems.org/ - 添加清华源:
gem sources --add https://mirrors.tuna.tsinghua.edu.cn/rubygems/ - 验证生效:
gem sources -l应只显示清华源地址;之后再执行gem install就会从镜像下载
项目级依赖管理(推荐方式)
直接用 gem install 全局安装容易导致版本冲突。更规范的做法是配合 Bundler:
- 先安装 Bundler:
gem install bundler - 在项目根目录创建
Gemfile,写入所需 gem,例如:
gem 'sqlite3'
- 运行
bundle install,Bundler 会按需安装并锁定版本到Gemfile.lock - 后续用
bundle exec rails server启动,确保使用的是该环境下的 gem


















