如果我构建了一个私有 gem(例如,在我的公司内部托管),那么我想在我正在构建的另一个 gem(不是应用程序!)中重用该 gem,我该怎么做?
我在哪里放置我的依赖项并告诉我的新 gem 如何找到旧的(已经构建的)私人托管的 gem?
所以我花了一段时间才弄清楚,因为答案是,它在两个地方。做这个:
source 'http://rubygems.org' source 'http://myrubygems.mycompany.example.com:8808' # Or wherever your gems are hosted internally (or externally) gemspec
Gem::Specification.new do |gem| # [...] gem.add_dependency 'myoldgem' # the gem hosted at myrubygems.mycompany.example.com:8808 end
这样做的原因可能很明显:您的 Gemfile 指定了 gem 的来源,而您的 .gemspec 指定了依赖项。
希望这可以节省几分钟。