情况如下:
假设自己写了个 gem foo,在某一部分有多个 adapter,不同的 adapter 依赖的 gem 不同,在使用方可以通过配置文件选择用哪个 adapter。
问题是:如果在 foo.gemspec 把所有的 adapter 的依赖全部写上,感觉这样做不太好,会引入很多不用的 gem。如果不写,在使用时 bundler 就没法把相关 gem 装好,需要用户手动检查这块的 gem 依赖,加到 Gemfile 里。
现在的想法是在读取用户写的配置文件时,检查用户是否加了 adapter 依赖的 gem,如果没有就在终端提示,求有没有更好的办法,是不是需要在自己的 gem 里通过 bundler 的 API 去解决这问题?