Skip to content

Archives

  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月

Categories

  • カテゴリーなし
Trend RepositoryArticles and guides
Articles

宝石とは何ですか? – RubyGems Guides

On 10月 24, 2021 by admin

RubyGemの中身を紐解く。

Gemの構造

各gemには名前、バージョン、プラットフォームがある。 例えば、rake gem は 0.8.7 バージョン (2009年5月) を持っています。 Rake のプラットフォームは ruby で、これは Rubyrun が動作するすべてのプラットフォームで動作することを意味します。

プラットフォームは、CPU アーキテクチャ、オペレーティングシステムの種類、および場合によってはオペレーティングシステムのバージョンに基づいています。 例えば、”x86-mingw32″ や “java” などです。 プラットフォームは、そのgemが同じプラットフォーム用にビルドされたrubyとしか動作しないことを示します。 RubyGems は、あなたのプラットフォーム用の正しいバージョンを自動的にダウンロードします。 詳しくは gem help platform を参照してください。

  • コード (テストとサポートユーティリティを含む)
  • ドキュメント
  • gemspec

各 gem はコード構成について同じ標準構造に従っています:

% tree freewillfreewill/├── bin/│ └── freewill├── lib/│ └── freewill.rb├── test/│ └── test_freewill.rb├── README├── Rakefile└── freewill.gemspec

ここで、gem の主要コンポーネントを確認することができます。

  • The lib directory contains the code for the gem
  • The test or spec directory contains tests, depending on which testframework the developer uses
  • A gem has a Rakefile, which the rake program uses to automate tests, generate code and perform other tasks.
  • この gem は bin ディレクトリに実行ファイルを含んでおり、gem がインストールされるとユーザーの PATH にロードされます。
  • ドキュメントは通常 README に含まれ、コードと一緒にインラインで表示されます。gemのファイル、テスト情報、プラットフォーム、バージョン番号などが、作者のメールと名前とともにここに表示されます。

Gemspec ファイルの詳細

Build your own gem

The Gemspec

gemspec は、名前、バージョン、説明、著者、ホームページなど gem についての情報を指定します。 詳しくは、agem の作り方

% cat freewill.gemspecGem::Specification.new do |s| s.name = 'freewill' s.version = '1.0.0' s.summary = "Freewill!" s.description = "I will choose Freewill!" s.authors = s.email = '[email protected]' s.homepage = 'http://example.com/freewill' s.files = end

で解説しています。

コメントを残す コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

アーカイブ

  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
  • DeutschDeutsch
  • NederlandsNederlands
  • SvenskaSvenska
  • DanskDansk
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • RomânăRomână
  • PolskiPolski
  • ČeštinaČeština
  • MagyarMagyar
  • SuomiSuomi
  • 日本語日本語

Copyright Trend Repository 2022 | Theme by ThemeinProgress | Proudly powered by WordPress