Intro : 私は、デフォルトで、いくつかの XML データから情報を引き出し、ドキュメントに対して何らかの処理を行う gem に取り組んでいます。XML の解析には nokogiri を使用しています。ただし、ユーザーが nokogiri をインストールしたくない場合、または既に XML を解析した場合に備えて、ユーザーが XML を自分で解析し、データ処理メソッドを実行するために必要な情報を渡すことを許可したいと考えています。
質問: gem のインストール中に、nokogiri 依存関係をインストールしたくないことをユーザーが指定できるようにする方法はありますか? たとえば(ここでは非常に手を振る)、
gem install crazy_gem --no-nokogiri
そしてgemspecではおそらく次のようなものです
Gem::Specification.new do |s|
...
s.add_dependency 'nokogiri' unless Proc.new { install_flags('no-nokogiri') }
...
end
[編集] 上記の gemspec コードにはあまり焦点を当てたくありません。それが機能しないことはわかっているからです。これは、私がやりたいことの例にすぎません。[/編集]
gem install crazy_gem --ignore-dependencies
追加の依存関係があるまでうまく機能します。