Local Dependency in Gem .gemspec

2019-04-18 12:09发布

问题:

I am working on a gem (Gem A) which uses another gem (Gem B) that I have also written. Until this point Gem B has been added in the gemspec for Gem A:

gem.add_dependency "gem_a", "~> 0.0.4"

But I now find the need to debug using my local version.

To declare a local dependency in a Gemfile I could do:

gem 'gem_a', path: "/local/path/to/gem_a"

But how do I declare a local dependency in a .gemspec?

回答1:

Just so folks can find the answer (slightly) faster...

If you're creating a gem, and need to add a local dependency (while developing), in your gem's Gemfile, do something like:

source 'https://rubygems.org'

# Specify your gem's dependencies in mygem.gemspec
gemspec

gem "local_gem", path: "/path/to/local_gem"

When you bundle you should see it's now using the local path

Using local_gem 0.1.0 from source at `/path/to/local_gem`


回答2:

Hm...what about adding it in gem's Gemfile in :development group?

UPD: I found similar question, maybe this helps

How to add dependency of a local gem to a rails plugin/engine, in .gemspec file