新手问题 gemspec 中条件依赖问题

kenshin54 · November 04, 2013 · Last by liwei78 replied at November 04, 2013 · 2913 hits

情况如下:

假设自己写了个 gem foo,在某一部分有多个 adapter,不同的 adapter 依赖的 gem 不同,在使用方可以通过配置文件选择用哪个 adapter。

问题是:如果在 foo.gemspec 把所有的 adapter 的依赖全部写上,感觉这样做不太好,会引入很多不用的 gem。如果不写,在使用时 bundler 就没法把相关 gem 装好,需要用户手动检查这块的 gem 依赖,加到 Gemfile 里。

现在的想法是在读取用户写的配置文件时,检查用户是否加了 adapter 依赖的 gem,如果没有就在终端提示,求有没有更好的办法,是不是需要在自己的 gem 里通过 bundler 的 API 去解决这问题?

😄 就弄成 factory_girl => factory_girl_rails, rspec => rspec-rails 这种吧

参照 omniauth 和一系列 omniauth-xxxx(twitter,qq,weibo...) 的做法

You need to Sign in before reply, if you don't have an account, please Sign up first.