Gem и bundler: добавление зависимости разработки с относительным путем

Я помогаю в разработке ряда взаимосвязанных драгоценных камней. Таким образом, я не хочу, чтобы они сильно зависели друг от друга, но я действительно хочу, чтобы они запускали тесты в процессе разработки, которые используют друг друга. Все просто, правда?Просто используйте add_development_dependency в gemspec, верно? Что ж, есть одна небольшая загвоздка - репозиторий git содержит все драгоценные камни, и поэтому я хочу, чтобы Gemfile указывал на локальную копию драгоценного камня. Это работает с жесткой зависимостью. В gemspec у меня есть эта строка для моей жесткой зависимости:

s.add_dependency "mygem-core"

А затем в Gemfile у меня есть такая строка:

gem "mygem-core", :path => "../mygem-core"

Это работает ИДЕАЛЬНО. Зависимость существует, когда я отправляю этот пакет, и когда я тестирую, он будет использовать локальную копию mygem-core. Проблема в том, что когда я помещаю ЭТО в gemspec:

s.add_development_dependency "mygem-runtime"

А затем это в Gemfile:

gem "mygem-runtime", :path => "../mygem-runtime"

, я получаю сообщение об ошибке при запуске пакета:

You cannot specify the same gem twice coming from different sources. You specified that mygem-packager (>= 0) should come from source at ../mygem-packager and 

Да, это не опечатка в конце. Буквально пустое место в конце для второй «локации». Есть ли какие-нибудь умные способы обойти это? Я хочу добавить это как зависимость разработки и использовать локальный источник. Что мне не хватает?

19
задан insumity 12 June 2011 в 02:57
поделиться