我正在尝试将私有宝石依赖项添加到我正在编写的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
。
我做错了什么?
答案 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'