web-dev-qa-db-ja.com

Ruby:gemの書き方?

Rubyのパッケージを作成し、gemとして利用できるようにしたいと思います。
ツール、手順、落とし穴は何ですか?
それを行う方法を学ぶのに役立つ良いチュートリアル、スクリーンキャストなどはありますか?

160
glmxndr

Rubygems.orgのガイド は、独自のgemを作成するための最良のリソースの1つです。

アプリで Bundler を使用している場合は、Ryan Biggによる Bundlerを使用したRubyGemの開発 および gemsの作成に関するRailscastバンドラー

Gemの作成に役立つツールに興味がある場合:

  • Jeweler -Rubygemプロジェクトを作成および管理するための優れたツール。 Gemcutter and Jeweler Railscast もあります。
  • Ho -seattlrbの人から。
  • gem-this は、便利なレーキタスクの束を追加します。

いくつかのチュートリアル/ガイド:

215
Jack Chu

Gemの作成を開始する必要はなく、コードを作成し、テストを作成し、必要に応じて使用します。満足したら、 gem this を使用して関連するRakefileを生成します。

他のgemがとるアプローチに固執する場合に役立ちます(libディレクトリを持ち、他のgemと衝突する可能性のある方法でファイルに名前を付けないようにし、可能であればテストを作成し、readmeを用意します)が、これは必要ありません。

共有したいものがあれば、それを github に置き、それを gemcutter にプッシュします。

考えすぎないでください。やその他の過剰なツールを使用しないでください。楽しんでください。私がやらないことはしないでください。

6
cwninja

これは私が通常Gemsを作成してリリースする方法です:

  1. https://github.com のサインアップ
  2. https://rubygems.org のサインアップ
  3. $ gem install ore rubygems-tasks rdoc rspec
  4. $ mine awesome_gem
  5. cd awesome_gem/を編集してREADME.rdocawesome_gem.gemspecを編集し、lib/awesome_gem/にコードを記述し、specs/にRSpecテストを追加します。
  6. リリースの準備ができたら、ChangeLog.rdocファイルを更新し、rake specおよびrake rerdocを実行し、html/index.htmlを開いて、タイプミスがないか再確認します。
  7. rake release
  8. (オプション)新しい素晴らしい宝石のリンクと説明を http://rubyflow.com に送信します

座って最初の宝石の栄光に浸りましょう。 :)

6
postmodern