実行可能ファイル (bin/mygem) を含む gem 'mygem' を作成しました。gemspec ファイルは、次のようないくつかの依存関係を定義します。
gem.add_dependency('othergem', '< 1.0')
私のコンピューターには、0.9 と 1.0 の 2 つのバージョンの othergem があります。
- bundle exec bin/mygemを実行すると、バージョン 0.9 の othergem が正しく読み込まれます。
- bin/mygemを実行すると、それが読み込まれる othergem (1.0) の最後のバージョンです。
論理的。問題は、1.0 バージョンの othergem が既にインストールされているコンピューターに gem 'mygem' をインストールする場合です。RubyGems は、gem の依存関係を満たすために、othergem の 0.9 バージョンをインストールします。しかし、ターミナルmygem (RubyGems によって生成された binstub) で実行する場合、それは 1.0 バージョンがロードされます。
質問: ベンダーのようなフォルダーに gem othergem を埋め込まずに、実行可能ファイルにバージョン 0.9 をロードさせるにはどうすればよいですか? ありがとう。