如何在gemspec中向私有gem添加依赖项?

时间:2015-05-08 07:51:58

标签: ruby gem

我正在尝试将私有宝石依赖项添加到我正在编写的gemspec中。我的<allow roles="Admin" /> <deny users="?" /> 是:

Gemfile

source 'https://rubygems.org' gemspec gem 'my_private_gem', '0.0.1', :git => 'https://username:pwd@bitbucket.org/johnny/my_private_gem.git' 中的相关行是:

mygem.gemspec

现在我认为这会有效,但在运行spec.add_dependency 'my_private_gem', '0.0.1' gem build mygem后,我得到:gem install ./mygem.gem

我做错了什么?

1 个答案:

答案 0 :(得分:0)

可以不创建自己的gem服务器。

如果gem的URL是正确的,很可能您没有在gem的0.0.1文件中指定的正确.gemspec版本。 您需要:spec.version = '0.0.1'(您添加的依赖关系就像对自身的递归依赖,我甚至不确定它是否可以使用它)

同样在大多数情况下,将gem指向某个版本的发布分支或标记会更容易。 如下所述:http://bundler.io/git.html 您需要在gem的根目录中使用.gemspecs才能按照上述方式使用它。或者创建一个分支/标记并使用以下之一: gem 'my_private_gem', :tag => 'v0.0.1', :git => 'https://username:pwd@bitbucket.org/johnny/my_private_gem.git' gem 'my_private_gem', :branch => 'release-0-0-1', :git => 'https://username:pwd@bitbucket.org/johnny/my_private_gem.git'