【问题标题】:Downloading dependencies for a private gem in vendor/cache在供应商/缓存中下载私有 gem 的依赖项
【发布时间】:2014-03-06 01:33:20
【问题描述】:

我们创建了一个仅供内部使用的 gem,它不托管在任何服务器上。它以 gem 文件的形式分发给团队,然后团队将其添加到他们的“vendor/cache”文件夹中,并使用 Bundler 将其添加为依赖项。

gem 项目中的 gemspec 文件规定了我们内部 gem 的 require 依赖项,但在使用“Bundle install”时没有下载它们。我认为这是因为依赖项列表是从对 ruby​​gems 服务器的调用中提取的,而不是从 Gem 文件本身中提取的?如果依赖项已经在供应商/缓存中,那么一切都很好。

有什么方法可以指示 gem/bundler 从 gem 本身而不是服务器获取依赖项列表?

是我们创建内部 Gem 服务器的唯一解决方案吗?

【问题讨论】:

    标签: ruby gem bundler dependency-management


    【解决方案1】:

    bundle installGemfile 中查找依赖关系并忽略 .gemspec

    根据 Rails 引擎文档:

    “在clinkle_shared.gemspec中声明你的gem的依赖。Bundler会将运行时依赖当作基础依赖,开发依赖会默认添加到:development组中。

    Gemfile 而不是.gemspec 中声明任何仍在开发中的依赖项。这些可能包括边缘 Rails 或来自您的路径或 Git 的 gem。请记住,在将您的 gem 发布到 ruby​​gems.org 之前,将这些依赖项移动到您的 .gemspec。”

    【讨论】:

    • 谢谢,我试试这个。
    猜你喜欢
    • 2011-05-23
    • 2013-09-03
    • 1970-01-01
    • 1970-01-01
    • 2019-06-26
    • 1970-01-01
    • 1970-01-01
    • 2014-06-20
    • 1970-01-01
    相关资源
    最近更新 更多