ユーザ用ツール

サイト用ツール


rubygems

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
rubygems [2011/08/02 02:53] – [サブコマンド] nullponrubygems [2020/07/12 10:16] (現在) – [ローカルからインストール] nullpon
行 1: 行 1:
 ====== RubyGems ====== ====== RubyGems ======
-RubyGemsは、Rubyのパッケージ管理ツール。PerlのCPAN、PHPのPearみたいなの。 
-  * [[http://rubyforge.org/projects/rubygems/|RubyForge: RubyGems]] 
-  * [[http://jp.rubyist.net/magazine/?0006-PackageManagement|Rubyist Magazine - シリーズ パッケージマネジメント 【第 1 回】 RubyGems (1)]] 
  
 +===== シェルスクリプトで使える技 =====
  
 +gemでインストールしたコマンドのパスを取得する。
  
-===== インストール ===== +  GEM_EXEC_PATH=$(ruby -e "puts Gem::bindir") 
-WindowsのActiveScriptRubyは、最初からgemsインストールされている。+ 
 +bundler入っていなければinstallする。
  
-MacOSX 10.6では最初からインストールされているが、Appleの都合でいつ変えられるか分からないのでMacPortsでRubyと一緒に入れるのが良い。 
 <code> <code>
-port install ruby +if ! gem which bundler >/dev/null 2>/dev/null; then 
-port install rb-rubygems+  gem install bundler 
 +fi
 </code> </code>
  
 ===== サブコマンド ===== ===== サブコマンド =====
 +
 hogeをインストール hogeをインストール
  
行 65: 行 66:
 ===== rubygems-update ===== ===== rubygems-update =====
 Rubygems自体のアップデートを管理するパッケージ。 Rubygems自体のアップデートを管理するパッケージ。
- 
-今は gem update --system を使わない。 
  
 最新版にする。 最新版にする。
行 79: 行 78:
      
 gem rubygems-update でインストール、update_rubygems で切り替え gem rubygems-update でインストール、update_rubygems で切り替え
 +
 +==== ubuntuでインストール済みgemが消えてしまう対策 ====
 +
 +ubuntuの一部のバージョンではupdate_rubygemsするとgemライブラリ置き場が変わってしまうので、今まで使っていたライブラリがロードできなくなる
 +
 +  $ export GEM_HOME=/var/lib/ruby/gems/1.8
 +
 +GEM_HOMEを指定するか
 +
 +  $ sudo ln -s /var/lib/gems /usr/lib/ruby/gems
 +  
 +標準のgemディレクトリの場所に、Ubuntuのgemディレクトリのシンボリックリンクを作成するとよい。
 ===== Windowsでgem update --systemして動かなくなる ===== ===== Windowsでgem update --systemして動かなくなる =====
 for ActiveScriptRuby 1.8.6 for ActiveScriptRuby 1.8.6
行 118: 行 129:
 </code> </code>
  
-===== gemパッケージの作成 ===== +===== 既存のgemファイルを弄る =====
-gemパッケージを自分で作る方法、newgemというライブラリを使うと簡単に作成できる。+
  
-インストール +既存のgemの取得・展開して修正する 
-  $ gem install newgem+<code> 
 +$ gem fetch hogehoge 
 +$ gem unpack hogehoge-x.y.z 
 +</code>
  
-するとnewgemというコマンドる。 +修正終わった再度パッケージする。
-  $ newgem+
  
-Rubyのラブラリを作る場所で +ファル構成が変わった場合はgemspecを作り直す 
-  newgem hoge -T spec +<code> 
 +gem spec hogehoge > hogehoge.gemspec 
 +</code>
  
-hogeディレクトリが作成され、その中にライブラリ、rakeタスク等が作成される。-Tオプションでテストライブラリを指定、デフォルトTest::Unit、-T rspecでRSpecを指定。+gemパッケージ作成 
 +<code> 
 +$ gem build hogehoge.gemspec 
 +</code>
  
-rakeでテストを実行 +===== ローカルからインストール =====
-  $ rake test +
-  $ rake spec+
  
-rakeでgemパッケージド +自作gemをローカルからインストーする場合など
-  $ rake package+
  
  
-==== 既存のものに適用 ==== +<code> 
-既に開発中のものにnewgemを用することもできる。hogeというライブラリ作成しているなら、 +当なgemソース取得 
-  hoge/lib/hoge.rb +$ git clone https://github.com/paulownia/http-server.git
-  hoge/spec/hoge_spec.rb +
- +
-のようなディレクトリ構成にしておき hoge ディレクトリの上で +
-  $ newgem hoge -T rspec +
- +
-とする。ヘルパやrakeタスクなどが作られる。hoge.rbやhoge_spec.rbを上書きしようとするので、一度退避させて後でマージするのが吉+
  
 +# ビルド
 +$ gem build http-server.gemspec
  
 +# インストール
 +$ gem install http-server-0.1.3.gem
 +</code>
  
rubygems.1312253594.txt.gz · 最終更新: 2011/08/02 02:53 by nullpon