рубин:код для установки gem, если отсутствует

StackOverflow https://stackoverflow.com/questions/1633087

  •  06-07-2019
  •  | 
  •  

Вопрос

есть ли какой-нибудь ruby-код, который я могу использовать для установки gem из локального файла, если этот gem не установлен?

я думаю, это выглядело бы примерно так:

if !gem_installed("some gem name")
  system "gem install -l local_copy.gem"
end

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

Это было полезно?

Решение

Проверка доступности описана в этом разделе предыдущий Вопрос StackOverflow

begin
  gem "somegem"
  # with requirements
  gem "somegem", ">=2.0"
rescue Gem::LoadError
  # not installed
end

или

matches = Gem.source_index.find_name(gem.name, gem.version_requirements)

Что касается установки, то она выглядит следующим образом rails использует систему для установки gem также

 puts %x(#{cmd})
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top