如果我将.gem文件下载到计算机中的文件夹,我可以稍后使用gem install
进行安装吗?
答案 0 :(得分:319)
此外,您可以使用gem install --local path_to_gem/filename.gem
这将跳过您离开--local
时发生的常见宝石存储库扫描。
您可以使用gem install --help
找到其他魔法。
答案 1 :(得分:276)
是的,当你执行gem install
时,它会首先搜索当前目录,所以如果你的.gem文件在那里,它会把它拿起来。我在gem reference找到了它,你也可以找到它:
gem install将安装named 宝石。它将尝试本地 安装(即。中的.gem文件) 当前目录),如果失败, 它会尝试下载和 安装最新版本的 你想要的宝石。
答案 2 :(得分:58)
您还可以将完整文件名用于您的gem文件:
gem install /full/path/to/your.gem
这也有效 - 这可能是最简单的方法
答案 3 :(得分:35)
如果您使用bundler创建宝石:
# do this in the proper directory
bundle gem foobar
你可以在写完后用rake安装它们:
# cd into your gem directory
rake install
您下载的宝石也可能知道rake install
。
答案 4 :(得分:13)
如果从github或其他scm主机站点下载项目文件,请首先使用gem build构建项目,这样就可以在当前目录中获取whatever.gem文件。然后宝石安装它!
答案 5 :(得分:9)
如果你想使用本地修改的gem分支,最好的方法是
gem 'pry', path: './pry'
在Gemfile中。
...其中./pry
将是您的存储库的克隆。只需运行bundle install
一次,您所制作的宝石来源中的任何更改都会立即反映出来。使用gem install pry/pry.gem
时,来源仍会移至GEM_PATH
,您必须同时运行bundle gem pry
和gem update
进行测试。
答案 6 :(得分:5)
转到gem所在的路径并调用gem install -l gemname.gem
答案 7 :(得分:0)
好吧,这是我的DRY安装:
[Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache
)*.gems
文件”复制到没有宝石的计算机上,该计算机在自己的宝石缓存位置(默认情况下,第一步的顾客路径为[Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache
)[Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache
中)并启动gem install anygemwithdependencieshere
(例如cucumber-2.99.0
)这是DRY,因为在安装了任何gem之后,默认情况下rubygems会将gem文件放在缓存gem目录中,并且没有重复的thats文件,如果您希望两台计算机具有相同版本(或因偏执的安全规则而泛滥),则更容易:v)
编辑:在某些版本的ruby或rubygems中,它不起作用并且不能发射 警报或错误,您可以将宝石放置在其他位置,但不能干燥, 另一种选择是使用启动集成命令
gem server
和 在gem来源中添加localhost网址,有关更多信息,请参见: https://guides.rubygems.org/run-your-own-gem-server/
答案 8 :(得分:0)
您可以从https://rubygems.org/gems/下载宝石,也可以通过捆绑包和机架来构建本地宝石。
例如:
在安装实际的gem之前要先安装依赖项。
注意:如果在同一台机器上使用流利的td代理和红宝石。请确保使用td-agent的td-agent-gem命令。 td-agent拥有自己的Ruby。