我该如何安装本地宝石?

hec*_*rsq 336 ruby rubygems

如果我将.gem文件下载到计算机中的文件夹,我可以稍后使用它安装gem install吗?

Jas*_*rue 324

另外,你可以使用 gem install --local path_to_gem/filename.gem

这将跳过您离开时发生的常见宝石存储库扫描--local.

你可以找到其他魔法gem install --help.

  • @BoratSagdiyev,一个zip文件不是宝石.与大多数zip文件一样,您需要先解压缩它,然后才能使用它.如果它包含gem,那么您可以在提取的.gem文件上使用gem install.我不记得宝石格式的内部; 它可能只是一个带有特殊标题的zip文件,但rubygems不能识别zip文件. (3认同)

Chr*_*nch 283

是的,当你这样做时gem install,它会首先搜索当前目录,所以如果你的.gem文件在那里,它会把它拿起来.我在宝石参考上找到了它,你也可以找到它:

gem install将安装指定的gem.它将尝试本地安装(即当前目录中的.gem文件),如果失败,它将尝试下载并安装您想要的最新版本的gem.

  • 奇怪的是,这似乎在2014年对我没有用. (10认同)
  • 来看看这对 2019 年的我来说很有效。 (3认同)
  • 链接以无限重定向结束:( (2认同)
  • 我有一个“Gemfile”,但没有“.gem”文件。那么这个“.gem”文件是什么?它应该包含什么?——等等——我明白了。您指的是“gem-name.gem”文件。请记住,在 Unix 上,文件以“.”开头是很正常的。所以最好把它拼写出来。 (2认同)

小智 60

你也可以使用你的gem文件的完整文件名:

gem install /full/path/to/your.gem
Run Code Online (Sandbox Code Playgroud)

这也很有效 - 这可能是最简单的方法


Bor*_*cky 36

如果您使用bundler创建宝石:

# do this in the proper directory
bundle gem foobar
Run Code Online (Sandbox Code Playgroud)

您可以在编写后使用rake安装它们:

# cd into your gem directory
rake install
Run Code Online (Sandbox Code Playgroud)

有可能,您下载的宝石也会知道rake install.

  • 这似乎是最好的现代答案.接受的答案是从8年前开始的 (3认同)

小智 13

如果您从github或其他scm主机站点下载项目文件,请首先使用gem build构建项目,这样您就可以在当前目录中获取whatever.gem文件.然后宝石安装它!


Mat*_*tW. 10

如果你想处理一个本地修改过的gem分支,最好的方法是

gem 'pry', path: './pry'

在Gemfile中.

...哪里./pry是您的存储库的克隆.只需运行bundle install一次,您所制作的宝石来源的任何变化都会立即反映出来.有了gem install pry/pry.gem,源仍然进入GEM_PATH,你将始终必须运行两个bundle gem prygem update测试.


leo*_*rdo 5

转到gem所在的路径并调用 gem install -l gemname.gem