【问题标题】:How to define asset dependency in a gem?如何在 gem 中定义资产依赖关系?
【发布时间】:2012-10-17 11:22:03
【问题描述】:

我想知道是否有一种方法可以将 gem 依赖项“绑定”到捆绑程序组。

我认为add_development_dependency 的行为有点像gem "foo", group: [:test, :development]

因此,如果我制作了一个依赖于 jquery 的 gem(我知道这是一个不好的例子),我应该添加这个依赖项吗?我对此的看法:

  • 正常依赖:gem 仅在资产编译阶段需要,但即使不需要,也会安装正常依赖
  • 开发依赖:至少会指出需要什么,但不能解决实际问题
  • 无依赖性:用户必须小心

我可以或应该做什么?我知道资产管道与 Rails 非常相关,但是有没有办法使用捆绑器组来实现 gem 依赖项?

【问题讨论】:

    标签: ruby ruby-on-rails-3 rubygems asset-pipeline


    【解决方案1】:

    尽管这种需求并不常见,但您始终可以在 Gemfile 本身中编写 ruby​​ eval 代码。

    这对它来说不是一个坏地方,因为这是rubygems 和Bundler 的“域”——因此您可以利用它们的 API 来验证 gem 版本(如果它们已加载)以及是否存在您的目标群体。

    然后,您可以将这些目标组定义为 gem 的 API 的一部分,并为其他工程师记录下来

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-10-25
      • 1970-01-01
      • 2012-05-25
      • 1970-01-01
      • 2019-01-12
      • 1970-01-01
      • 1970-01-01
      • 2018-05-17
      相关资源
      最近更新 更多