2014-01-10 6 views
0

Я написал рубиновый камень, для которого требуется другой драгоценный камень -> 'curl'.Требования к установке автоматически

Как я могу сделать это случиться так, что «виться» мой требуется драгоценный камень становится устанавливается вместе с моей, когда я бегу:

gem install MyGem-1.0.0.gem 
+0

Почему вы не считаете [пакетирования] (http://bundler.io/) в качестве инструмента? – Astery

+0

похоже на то, что я ищу. почему не оберните это в ответ? – Ostkontentitan

+0

Потому что я не думал, что кто-то может встретиться с задачей написать драгоценные камни, прежде чем встретится с поставщиком. Мне кажется невозможным. =) – Astery

ответ

1

Если вы не используете Bundler, вам просто нужно добавить «Curl» драгоценный камень, как зависимость времени выполнения в вашем gemspec файле.

spec.add_runtime_dependency 'example', '~> 1.1', '>= 1.1.4' 

Подробная ссылка: http://guides.rubygems.org/specification-reference/#add_runtime_dependency

+0

Даже если вы используете Bundler, вы должны, иначе Bundler не сможет понять, что ваш драгоценный камень имеет зависимости. Использование Bundler - это просто автоматизация поверх gemspec, а не замена. –

+0

@SimoneCarletti: Это правильно. Я только что упомянул об этом, если они считают, что это специфическое требование к поставщику. В любом случае, это делает его более понятным, спасибо. – Sam

2

RubyGems specifications (файл .gemspec) позволяет вам перечислить драгоценный камень как dependency of your gem. Это приведет к тому, что RubyGems автоматически установит зависимость (в вашем случае curl), когда установлен ваш драгоценный камень.

Gem::Specification.new do |spec| 
    # ... 
    spec.add_runtime_dependency 'curl', '~> 1.1' 
end 
Смежные вопросы