RubyGemsの使い方
下記のページを参考にパッケージの利用方法を勉強する。
RubyGems の使い方 - WebOS Goodies
RubyGemsはRubyInstallerでインストールしたら入っていたのでインストール方法は省略する。
環境構築 RubyInstaller - ayaketanのプログラミング勉強日記
gemコマンドの使い方
RubyGemsのほとんどの機能はgemというコマンドで利用できる。
基本的な書式は下記のようになる。
gem <サブコマンド> [オプション] [パラメータ]
gemコマンドは様々な機能を持っているので、どの機能を実行するかをサブコマンドで実行する。(正式なドキュメントでは「command」と呼ばれているが、紛らわしいので「サブコマンド」と呼ぶ。)
| コマンド | 機能 |
|---|---|
| gem help commands | 利用可能なサブコマンドのリストを表示 |
| gem help <サブコマンド> | オプションやパラメータ等サブコマンドの詳細情報を表示 |
パッケージのインストール
| コマンド | 機能 |
|---|---|
| gem install --remote <パッケージ名> | リモートリポジトリからパッケージをダウンロードしてインストール |
installコマンドには下記のオプションも使用できる
| オプション | 機能 |
|---|---|
| --version バージョン | 指定バージョンをインストール |
| --[no-]rdoc | RDoc 形式のドキュメントを生成する[しない] |
| --[no-]ri | ri コマンドで読めるドキュメントを生成する[しない] |
| --force | 依存性チェックをスキップして強制インストール |
| --ignore-dependencies | 依存パッケージをインストールしない |
"--version"オプションのバージョン指定は、単に"1.0.0"などと記述すれば正確に一致するバージョンになるし、"<1.0.0"のように演算子を付けることもできる。
利用可能な演算子は下記の通り。
| 演算子 | 意味 |
|---|---|
| = | 指定バージョン(デフォルト) |
| != | 指定バージョン以外 |
| > | 指定バージョンより新しいもの |
| >= | 指定バージョンか、より新しいもの |
| 指定バージョンより古いもの | |
| <= | 指定バージョンか、より古いもの |
| ~> | "~>2.0" とすると、 2.x 系列で最新のものになる |
パッケージのアップデート
インストール済みパッケージを最新版に更新するときは、updateサブコマンドを使う。
RubyGems では複数バージョンのパッケージがインストールできるので、パッケージを更新しただけでは旧バージョンは削除されない。
| コマンド | 機能 |
|---|---|
| gem update [パッケージ名] | インストール済みパッケージを最新版に更新 |
| gem outdated | 更新が必要なパッケージを一度に確認 |
| gem cleanup [パッケージ名] | 最新バージョンを残してすべてアンインストール |
パッケージのアンインストール
特定のパッケージを削除するには、uninstallサブコマンドを使う。
| コマンド | 機能 |
|---|---|
| gem uninstall <パッケージ名> | パッケージをアンインストール |
複数のバージョンがインストールされている場合は、それらを列挙してどのバージョンを削除するか尋ねてくる。また、他のパッケージが削除しようとするパッケージに依存している場合は本当に削除してよいか確認してくる。
よく使用するオプションは下記の通り。
| オプション | 機能 |
|---|---|
| --all | 該当するすべてのバージョンを削除 |
| --version バージョン | 指定されたバージョンを削除 |
パッケージの検索
インストールするパッケージの名前がはっきりしないときは、 search サブコマンドで検索をかけることができる。
| コマンド | 機能 |
|---|---|
| gem search --remote <検索文字列> | 名前に検索文字列を含むパッケージをリストアップ |
| gem query --remote --name-matches <正規表現> | 名前が正規表現にマッチするパッケージをリストアップ |
インストール済みパッケージの情報取得
| コマンド | 機能 |
|---|---|
| gem search | インストール済みパッケージの一覧を表示 |
| gem contents [--version <バージョン>] <パッケージ名> | 特定のパッケージに含まれるファイルの一覧を表示 |
ライブラリの利用方法
最新のライブラリを読み込む
RubyGemsでインストールしたライブラリを利用する場合は、必ずスクリプトの最初で'rubygems'を読み込む。
require "rubygems"
あとは通常通りライブラリをrequireするだけでよい。複数のバージョンがインストールされている場合は、その中から最新のものが読み込まれる。
バージョンを指定して読み込む
特定のバージョンのライブラリを使いたいときは"rubygems"をrequireした後にgemを使ってバージョンを指定する。
例えば、下記の例はactive_recordのバージョン1.14.0を読み込む。
require "rubygems" gem "active_record", "=1.14.0" require "active_record"