0

Ruby gem を開発していますが、required がめちゃくちゃです。

gem は Web スクレイパーであり、指定されたオプションに応じてさまざまな方法で Web にアクセスするため、さまざまな gem を必要とします。一部のユーザーは、gem をまったく必要としない場合があります。

私の質問は、.gemspec に何を入れるかです。

 s.add_runtime_dependency #do I require all the gems here?

コード内で実際に必要な gem を必要とする場所と、テストを行う方法を教えてください。

私はこれに関する慣習を知りません。ありがとう。

*コード: https://github.com/ZirconCode/Scrapah

4

1 に答える 1

0

RubyGems は依存関係の 2 つの主な「タイプ」を提供します:runtimedevelopment.

実行時の依存関係は、gem が動作するために必要なものです ( railsneedingなどactivesupport)。

開発依存関係は、誰かがあなたの gem に変更を加えたい場合に役立ちます。開発依存関係を指定すると、別の開発者が実行されgem install --dev your_gemRubyGems両方の依存関係セットが取得されます ( runtime and development)。典型的な開発の依存関係には、テスト フレームワークとビルド システムが含まれます。

したがって、Gem 仕様ファイルでは、gem が機能するために必要な gem を追加できます。

Gem::Specification.new do |s|
   s.name = "gem name"
   s.version = "2.0.0"
   s.add_runtime_dependency "daemons",
   ["= 1.1.0"]
   s.add_development_dependency "bourne",
   [">= 0"]
于 2013-11-14T16:06:34.213 に答える