我正在帮助开发一系列相关的gem。因此,我不希望他们对彼此有很强的依赖性,但我希望他们在开发中运行彼此使用的测试。简单的权利?只需在gemspec中使用add_development_dependency
,对不对?那么,有一点点皱纹 - git仓库包含了所有的宝石,所以我想让Gemfile指向本地的gem副本。这与硬依赖性一起工作。在gemspec,我有这行我的硬盘依赖性:Gem和bundler:使用相对路径添加开发依赖关系
s.add_dependency "mygem-core"
然后在Gemfile中,我有这行:
gem "mygem-core", :path => "../mygem-core"
这完美的作品。当我推出这个软件包时,存在依赖关系,当我测试时,它将使用mygem-core的本地副本。问题是,当我把这个在gemspec:
s.add_development_dependency "mygem-runtime"
然后这在Gemfile中:
You cannot specify the same gem twice coming from different sources. You specified that mygem-packager (>= 0) should come from source at ../mygem-packager and
:
gem "mygem-runtime", :path => "../mygem-runtime"
然后我当我运行包得到一个错误是的,这不是最后的错字。第二个“位置”的字尾有一个空白的空白空间。有没有什么聪明的方法可以解决这个问题?我想将其作为开发依赖项添加,并使用本地源代码。我错过了什么?