Ruby 如何定义gem中的资产依赖关系?

Ruby 如何定义gem中的资产依赖关系?,ruby,ruby-on-rails-3,rubygems,asset-pipeline,Ruby,Ruby On Rails 3,Rubygems,Asset Pipeline,我想知道是否有办法定义绑定到绑定器组的gem依赖项 我假设add\u development\u dependency的行为类似于gem“foo”,group:[:test,:development] 所以,如果我制作了一个依赖于jquery的gem(我知道这是一个糟糕的例子),那么我应该添加这个依赖项吗?我的想法是: 正常依赖关系:gem仅在资产编译阶段需要,但即使不需要,也会安装正常依赖关系 开发依赖性:至少可以指出需要什么,但不能解决实际问题 无依赖关系:用户必须小心 我能或应该做什么

我想知道是否有办法定义绑定到绑定器组的gem依赖项

我假设
add\u development\u dependency
的行为类似于
gem“foo”,group:[:test,:development]

所以,如果我制作了一个依赖于jquery的gem(我知道这是一个糟糕的例子),那么我应该添加这个依赖项吗?我的想法是:

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

我能或应该做什么?我知道资产管道与rails非常相关,但是有没有一种方法可以将捆绑程序组用于gem依赖项呢?

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

这是一个不错的地方,因为这是
rubygems
Bundler
的“域”——因此,如果gem版本已经加载,您可以利用它们的api来验证gem版本,以及目标组的存在

然后,您可以将这些目标群体定义为gem的API的一部分,并为其他工程师编写文档