コマンドラインから:
bundle gem your_new_gem
これにより、your_new_gem
というディレクトリが作成され、ファイルの基本セットとディレクトリ構造が作成されます。これらは現在、ベストプラクティスと見なされています。すばやく、簡単に、そして始めるのに最適な場所です。
ジェムの作成はそれほど難しくありません。ツールを使用せずに、ジェムを最初から作成してみることをお勧めします。何が関係しているのか(gemspecを作成し、それをビルドしてrubygems.orgにプッシュする)を理解したら、ツールを使用してプロセスをスピードアップできます。私の推測では、宝石を作ることはほとんど問題ではないので、あなたはそうしないでしょう。
ジュエラーと一緒に行きます。 Bundlerスケルトンはあなたに基本を与えるだけです。 Jewelerには、使用できるオプションがたくさんあり、バージョン管理、githubへのプッシュ、gemspecの作成、ビルド、インストールに役立つ多くのrakeタスクがあります。
Rails 3エンジンを使用している場合、アプリのスケルトンを生成してエンジンファイルを含めるジュエラーフォーク(間違いなく進行中の作業)があります。実行する必要があるのはオプションとして--Rails3-engine
を使用したジュエラーコマンド。興味がある場合は、次のフォークを使用してください。
https://github.com/johnmcaliley/jeweler
組み込みのbundleコマンドを使用することをお勧めします。
bundle gem your_gem_name
宝石を作成するときに従うべきいくつかのルールがあります。命名規則やバージョン管理規則など。最近、netguruのブログにgemの作成に関する投稿を書きました。そこに必要なものが見つかると思います。
https://netguru.co/blog/posts/creating-a-gem-a-step-by-step-tutorial
お役に立てれば。
見る価値のある代替案は次のとおりです。 ore
BundlerはRuby gemsの単一のテンプレートを提供しますが、oreには複数の組み込みテンプレートに加えて、独自のテンプレートを作成する機能があります。Git、SVN(urgh)、Mercurialもサポートしています。
RubyMineでgemを作成することもできます。ファイル>新しいプロジェクト>新しい宝石。とても簡単です。しかし、私はこのアプローチについていくつかメモしたいと思います。
デバッグには、RubyMineはFastDebuggerのgemであるRuby-debug-ideを使用します。現在、ほとんどの人がPry with Byebugを使用していることは知っていますが、Ruby-debug-ideは、Ruby-debugをEclipse(RDT)、NetBeans、RubyMineなどのIDEに接着するインターフェイスです。
[実行]> [構成の編集]> +> [Ruby]で、次のドキュメントに従って、新しいデバッグ構成を追加します: https://www.jetbrains.com/help/Ruby/run-debug-configuration-gem-command .html#1
構成の下の「Rubyスクリプト」の下で、libの下のRuby gemファイルへのパスを追加します:lib/my_gem.rb構成の下の「RubySDK」の下で、RVMgemsetを指定しますI使用しています。Bundlerセクションで、「bundleのコンテキストでスクリプトを実行する」をチェックします。これはbundle execを使用し、プロジェクトのルートにあるGemfileの依存関係を読み取ります。gemの場合、Gemfileには「gemspec」というメソッド呼び出しが含まれています。 "、これはmy_gem.gemspecの依存関係の依存関係を読み取ります。そこで、依存関係がGem :: Specification.newブロックに渡されます。
spec.add_development_dependency "bundler", "~> 1.7"
spec.add_development_dependency "rake", "~> 10.0"