我创建了一个宝石(X)和未发布。 现在,我创建另一个宝石这将增加宝石X作为这样的依赖性: -
s.add_dependency "X"
在gemspec文件。
由于宝石(X)不上rubygem或GIT中或RubyForge上,束安装命令引发错误:
找不到宝石X **
我想指定为X的路径就可以了,但是怎么样?
我创建了一个宝石(X)和未发布。 现在,我创建另一个宝石这将增加宝石X作为这样的依赖性: -
s.add_dependency "X"
在gemspec文件。
由于宝石(X)不上rubygem或GIT中或RubyForge上,束安装命令引发错误:
找不到宝石X **
我想指定为X的路径就可以了,但是怎么样?
我想我看到什么@ bor1s指着在SO张贴关于git的引用。
该gemspec
文件是关于依存关系发布您的宝石。 你Gemfile
创建了本地的发展环境,通常是通过调用gemspec
。
在你的情况你gemspec
应该有这个
s.add_dependency "X"
然后你Gemfile
看起来像这样(确保了本地参考值后gemspec
调用):
source "http://www.rubygems.org"
gemspec
gem "X", :path => "/Users/vikram/source/X"
从亚胡达·卡茨的报价博客文章gemspec和捆扎机
如果你发现你需要开发针对尚未发布的宝石(例如,Rails的开发往往对未发布的机架,阿雷尔,或邮件宝石),您可以添加在Gemfile中各行告诉捆绑在哪里可以找到宝石。 它仍然会使用在.gemspec扶养决议中所列的依赖关系,但它现在确切地知道在哪里可以找到宝石开发过程中的依赖。
source "http://www.rubygems.org"
gemspec
# if the .gemspec in this git repo doesn't match the version required by this
# gem's .gemspec, bundler will print an error
gem "rack", :git => "git://github.com/rack/rack.git"
你不会希望包括在.gemspec此信息,最终将开发中的宝石也被释放之后被释放到RubyGems的。 同样,这使得整个系统更具弹性,因为它不依赖于短暂的外部URL。 此信息是纯粹的东西用来建立发展过程中一个完整的环境,这需要一定的精度。
我认为你可以从这里找到您的问题的答案: 宝石依赖
希望这将有助于。