ruby: код для установки gem, если он отсутствует - PullRequest
5 голосов
/ 27 октября 2009

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

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

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

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

1 Ответ

6 голосов
/ 27 октября 2009

Проверка доступности описана в этом предыдущем StackOverflow Quesiton

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})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...