Railsで使えるGem

Rubyでローカルで使うgemをつくる~bundler

投稿日:

 

bundlerのインストール

gemパッケージ管理用アプリケーションであるbundlerをインストールする

 

bundle gem ファイル名

bundle gem コマンドでgem用のファイルを準備する

 

gemspec

生成されたファイルの中にgem名.gemspecというファイルができている.gemの設計図を書いておく.
TODOとかいう文字を含んでいるとパッケージ化を拒否されるので、書けるところは書いておく.

gemspecのリファレンスはここにある.

依存関係

ほかのgemを使い必要がある場合は依存関係をgemspecに書く

依存関係にはrubtimeとdevelopmentがある.

 

Gemfilesとgemspecとの関係については

langturn.com/translations/33?locale=ja

lib

本体を置くlibディレクトリ以下の構造は次のような感じ

hello.rbファイルが起点となる.version.rbファイルはversionを指定するためのファイル.
versionの仕方はセマンティックバージョニングという規則に従っておくと、みんながわかりやすい.

ファイルを増やす

ファイルはlib/パッケージ名/*に保存する.hello.rbからrequire する.

ただ、bundlerでつくった場合はファイルを作成しただけだと追加されない.gemspecファイルをみればわかるけど、ファイルはgit ls-filesで確認している.

なので、git add . + git commit しておく必要がある.

パッケージ化

gemコマンドのリファレンスはここにある.

インストール

 

使い方

 

 

ここを読もう

Developing a RubyGem using Bundler

簡単にGitHubにリリースするのにgemコマンドを拡張してくれる

github.com/svenfuchs/gem-release

 

gemの作成・登録方法あり

Railsの拡張方法

-Railsで使えるGem
-

執筆者:

関連記事

no image

Rails3.2.8で自動テスト環境を整える〜cucumber+spork+guard

環境 ruby 1.9.3 & rails 3.2.8 参考 cucumber + spork + guard + factory_girl あってもよいが[crayon-5c95d36aaf …

no image

Mongoidで地理情報インデックスを使おうとしたけどうまくいかない

試したgem mongoid_geo mongoid_geospatial 試してないgem mongoid_spacial

no image

Rubyでffmpegのラッパーを使う~streamio-ffmpeg

  github.com/streamio/streamio-ffmpeg rubyでffmpegが扱える高機能ラッパー 導入 [crayon-5c95d36aafeec553325874/ …

no image

Rails3で動画配信を試用~flowplayer

  最近はYoutubeなど動画配信サイトも充実してきていて知人向けのプライベートな配信も可能なようだ しかし、やっぱりYoutubeにアップするのは抵抗があったり、LAN内だけで配信したい …

no image

Rubyからdocxを生成する

    前提 Rubyでdocxをいろいろ分析してみた 変数の仕様~正規表現 いろいろなパターンで試してみた 例えば、こんな文 [crayon-5c95d36ab018f48495 …