Как развивать драгоценные камни, когда одно зависит от другого

У меня есть драгоценный камень A, который зависит от драгоценного камня B. Оба драгоценных камня являются моими собственными и в настоящее время находятся в частной разработке. У меня нет планов публиковать их на rubygems.

Я хочу использовать драгоценный камень A в своем приложении rails.

Проблема в том, что я получаю эту ошибку, когда пытаюсь запустить установку пакета для моего приложения rails.

Не удалось найти драгоценный камень «B (>= 0) рубин», который требуется для драгоценного камня «A (>= 0) рубин», ни в одном из источников.

в моем приложении rails в моем Gemfile у меня есть

gem 'A', :path => "/path/to/A'

в gemspec драгоценного камня A у меня есть

gem.add_dependency 'B'

и в Gemfile A я явно установил местоположение B следующим образом

gem 'omusubi', :path => "path/to/B'

Вышеупомянутая конфигурация, похоже, не работает, когда я пытаюсь запустить свое приложение rails.

Однако, когда я запускаю каждый из наборов тестов драгоценного камня, они проходят нормально.

Я считаю, что проблема в том, что когда я запускаю приложение rails, а упаковщик загружает зависимость A, он смотрит только на gemspec A, полностью игнорируя gemfile. Это наверное так и задумано. Итак, как мне заставить мой код работать без необходимости публиковать мои личные драгоценные камни на этом этапе разработки.


person robodisco    schedule 18.02.2013    source источник


Ответы (1)


Одна из возможностей — поместить жесткую зависимость от B в Gemfile вашего приложения, используя параметр :path. В этом случае Bundler должен разрешить это правильно.

person Jimmy    schedule 18.02.2013