我遇到使用Bundle解决宝石冲突的麻烦。
无法为[“activemodel-3.0.8”,“actionpack-3.0.8”,“railties-3.0.8”]激活构建器(〜> 2.1.2,运行时),已激活builder-3.0 .0代表[“cucumber-0.10.6”](Gem :: LoadError)
因此,当黄瓜需要版本3.0.0时,这意味着有效*需要构建器v 2.1.2。 很容易,但是......
我该怎么办呢? 低档黄瓜? 我尝试了捆绑更新但是...接缝最后版本的活动模型,包和铁路是3.0.8。 我怎么能知道黄瓜版本与活跃的建造者兼容?
那么,一般来说解决这种情况的一般方法是什么?
答案 0 :(得分:3)
那很奇怪;在检查依赖项时,Bundler应将builder
锁定到v2.1.2。
首先,尝试运行bundle update
让Bundler重新解析所有依赖项。此应将构建器正确锁定到v2.1.2。
如果失败,您可以通过将其添加到Gemfile
来强制构建器v2.1.2:
gem `builder`, `~> 2.1.2'
然后运行bundle update builder
。这应该将v2.1.2添加到Gemfile.lock
,这应该适用于Cucumber(它只需要> = 2.1.2)。
请参阅Yehuda Katz最近关于Gem versioning and Bundler的博文,了解更多细节。