gpt4 book ai didi

ruby - gem 和 bundler : Adding a development dependency with a relative path

转载 作者:数据小太阳 更新时间:2023-10-29 06:33:33 26 4
gpt4 key购买 nike

我正在帮助开发一系列相互关联的 gem 。因此,我不希望他们彼此硬依赖,但我确实希望他们在开发中运行相互使用的测试。简单吧?只需在 gemspec 中使用 add_development_dependency,对吗?好吧,有一个小问题——git 存储库包含所有的 gem,所以我希望 Gemfile 指向 gem 的本地副本。这适用于硬依赖。在 gemspec 中,我有这一行来表示我的硬依赖:

s.add_dependency "mygem-core"

然后在 Gemfile 中,我有这一行:

gem "mygem-core", :path => "../mygem-core"

这很完美。当我推出这个包时存在依赖关系,当我测试时,它将使用 mygem-core 的本地副本。问题是当我把它放在 gemspec 中时:

s.add_development_dependency "mygem-runtime"

然后在 Gemfile 中:

gem "mygem-runtime", :path => "../mygem-runtime"

然后当我运行 bundle 时出现错误:

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 留在 .gemspec list 中,并将其放入 :development 组下的 Gemfile 中。

# Gemfile
source :rubygems
gemspec

gem "mygem-runtime", :path => '../mygem-runtime', :group => :development

关于ruby - gem 和 bundler : Adding a development dependency with a relative path,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6319758/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com