从Ruby脚本,我想发送一个命令来安装一个gem,如果它丢失了。我们说它是"foo"
。我认为检查gem存在的命令是Gem.find_files
,安装gem的命令是Gem.install
。我试过这个:
if Gem.find_files("foo").empty?
Gem.install("foo")
end
和Gem.find_files
似乎有效,但Gem.install
会返回错误Uninitialized constant Gem::DependencyInstaller
。假设这是要运行的代码的第一部分,并且我正在使用新安装的Ruby,除了Ruby 2附带的核心库之外,此时没有安装任何gem,安装gem的正确方法是什么来自Ruby脚本(不是来自shell)?
答案 0 :(得分:2)
怎么样:
require 'rubygems/dependency_installer.rb'