由于json_pure和json gems是兼容的,有没有办法创建另一个依赖于任何一个的gem?
如果没有,安装后宝石是否是检查其中一个json宝石的好地方,如果两者都未安装则会发出警告?
还有其他解决方案吗?
更新 - 对@tadman的回应及澄清
如果有可能“强迫”其中一个,那么强迫,纠正并不是一件坏事吗?你关于“强迫”的问题是一种修辞,暗示我的问题的答案是“不”。
此外,我的印象是,人们通常不会查看每个依赖项并询问“我需要这个吗?”
关于缺少依赖项的错误消息 - 在我看来,仅在用户尝试运行其应用程序时告诉用户缺少dep是不可接受的用户体验。他们需要早点知道,为什么我提到了安装后的消息。
答案 0 :(得分:0)
为什么要强制这种依赖?只需将其列为要求,并让用户选择他们喜欢的内容。
Gemfile
规范必须列出您想要的那些宝石,并且不支持在多个选项之间进行选择。 .gemspec
文件遵循相同的结构。
要成为一个好公民,你的宝石应该通过提供一个描述问题和补救措施的简洁明确的信息,从而无法加载其中一个。这样可以避免一个丑陋而混乱的堆栈跟踪。