如果我下载了一个。gem文件到我电脑的文件夹中,我以后可以使用gem install安装它吗?


当前回答

这是我的DRY装置:

Look into a computer with already installed gems needed in the cache directory (by default: [Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache) Copy all "*.gems files" to a computer without gems in own gem cache place (by default the same patron path of first step: [Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache) In the console be located in the gems cache (cd [Ruby Installation version]/lib/ruby/gems/[Ruby version]/cache) and fire the gem install anygemwithdependencieshere (by example cucumber-2.99.0)

这是DRY,因为安装任何宝石后,默认情况下,rubygems把宝石文件在缓存宝石目录和没有意义的复制文件,这是更容易,如果你想两台计算机有相同的版本(或被妄想的安全规则:v)

编辑:在ruby或rubygems的某些版本中,它不能工作和发射 警报或错误,你可以把宝石放在其他地方,但不会得到DRY, 其他替代方案是使用启动集成命令gem服务器和 在gem源代码中添加localhost url,更多信息在: https://guides.rubygems.org/run-your-own-gem-server/

其他回答

是的,当你安装gem时,它会首先搜索当前目录,所以如果你的.gem文件在那里,它会把它捡起来。我在宝石参考上找到了它,你可能也会发现它很方便:

Gem安装将安装命名 宝石。它将尝试一个局部 安装(即。gem文件在 当前目录),如果失败, 它将尝试下载和 的最新版本 你想要的宝石。

如果您想在gem的本地修改分支上工作,最好的方法是

Gem 'pry', path: './pry'

在Gemfile中。

... 其中。/pry将是您的存储库的克隆。只需运行bundle install一次,您对gem源代码所做的任何更改都会立即反映出来。与宝石安装撬/撬。gem,源代码仍然移动到GEM_PATH,你总是必须运行捆绑gem撬和gem更新来测试。

同样,你可以使用gem install——local path_to_gem/filename.gem

这将跳过通常的宝石存储库扫描,当您离开—local时发生。

你可以找到其他魔法与宝石安装-帮助。

如果你用bundler创建宝石:

# do this in the proper directory
bundle gem foobar

你可以在它们写完之后用rake安装它们:

# cd into your gem directory
rake install

很有可能,你下载的gem也知道rake的安装。

你可以从https://rubygems.org/gems/下载宝石,或者通过捆绑和机架构建你的本地宝石。

eg:

捆绑宝石yourGemName 耙式安装

在安装真正的宝石之前,要注意安装依赖项。

gem install——local /pathToFolder/xxx-2.6.1.gem

注意:如果在同一台机器上使用fluentd td-agent和ruby。请务必使用td-agent的td-agent-gem命令。td-agent有自己的Ruby。