RubyGems 簡介

RubyGems 是 Ruby 的 Package 管理系統,讓你輕易安裝及管理各種 Ruby programs/libraries。

你可以去 rubygems.org/pages/download 下載回來,執行 ruby setup.rb。在 Freebsd 下則可以進 /ports/devel/ruby-gems/make install 安裝。

gem -v 告訴你 RubyGems 的版本
gem update --system 升級你的RubyGems版本
gem install gemname 安裝某個套件
gem list 列出安裝的套件
gem list -r keyword 列出 RubyGems.org 上有此關鍵字的套件(可用regular expression)

你可以跑一遍 gem list -r > remote_gem_list.txt 來拿到全部的清單

不是所有的 gems 都用 Ruby 寫的,有用 C extensions 的會需要 C/C++ compiler。因此安裝的時候,會出現 ruby/mswin32,後者直接提供 binary gem。不過win32上還有是例外,需要要下載回來裝再執行某些動作,例如 gem install RMagick-win32-x.x.x-mswin32.gem 再 ruby postinstall.rb 云云,看README吧。

gem check --alien 檢查你安裝的套件有沒有壞掉或被修改過。
gem update gemname 更新最新版本
gem update 更新所有你安裝的Gems
gem install -v x.x.x gemname 安裝特定版本
gem uninstall gemname 反安裝

程式中要使用 library 的話,用法如下:

require 'rubygems'
gem 'gemname','>=1.0.0' # 若需要指定版本的話加這行
require 'gemname'

其中 gem 在更早的版本是寫 require_gem,新的 Rubygems 為了避免與 require 混淆已改名(一個是檢查版本,一個是真正引用,兩者不一樣),這也是因為新版 Rubygems 把 autorequire 的功能拿掉了。

參與討論

1 則留言

發佈留言

發表迴響