2

実行可能ファイル (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 をロードさせるにはどうすればよいですか? ありがとう。

4

0 に答える 0