3

プライベートジェム(たとえば、社内でホストされている)を作成した場合、そのジェムを、作成している別のジェム(アプリではありません!)で再利用したいのですが、どうすればよいですか?

依存関係をどこに置き、新しい(すでに構築されている)プライベートにホストされているgemを見つける方法を新しいgemに指示しますか?

4

1 に答える 1

5

答えは2か所にあるので、これを理解するのに少し時間がかかりました。これを行う:

  • gemのGemfile(はい、.gemspecではなくGemfile)に、プライベートgemサーバーのソース行を追加します。RubyGemsからもプルしている場合は、次のようになります。
source 'http://rubygems.org'
source 'http://myrubygems.mycompany.example.com:8808'  # Or wherever your gems are hosted internally (or externally)
gemspec
  • 次に、mynewgem.gemspecに次のように入力します。
Gem::Specification.new do |gem|
  # [...]
  gem.add_dependency 'myoldgem'  # the gem hosted at myrubygems.mycompany.example.com:8808
end

これが機能する理由はおそらく明らかです。Gemfileはgemのソースを指定し、.gemspecは依存関係を指定します。

これで誰かが数分節約できることを願っています。

于 2013-01-26T01:07:22.920 に答える