Я пишу ruby драгоценный камень, который зависит от другого драгоценного камня.
Например. Я пишу гем под названием «AB C», который зависит от «XYZ». Как заставить мой гем устанавливать "XYZ" автоматически, когда я пытаюсь установить "AB C"?
Я пишу гем под названием «AB C», который зависит от «XYZ». Как сделать так, чтобы мой гем устанавливал "XYZ" автоматически, когда я пытаюсь установить "AB C"?
Вы не должны пытаться заставить ваш гем устанавливать зависимости автоматически. Это буквально , для чего предназначен RubyGems. RubyGems автоматически разрешает зависимости, в этом гем не нуждается.
Просто определите требуемую зависимость в вашем .gemspec файле:
.gemspec
https://guides.rubygems.org/specification-reference/#add_runtime_dependency
spec.add_runtime_dependency 'example', '~> 1.1', '>= 1.1.4'
, и они будут установлены при установке вашего драгоценного камня ( или просто используется, если зависимость уже существует).
Также есть способ установить зависимости dev: https://guides.rubygems.org/specification-reference/#add_development_dependency
spec.add_development_dependency 'example', '~> 1.1', '>= 1.1.4'
для тех драгоценных камней, которые требуется для разработки (например, rspec), но не требуется для работы конечного продукта.
rspec