如何修复'无法找到gem" rails"'?的兼容版本?

时间:2017-06-27 17:14:54

标签: ruby-on-rails ruby spree solidus

我真的把头撞到墙上,我自己找不到解决这个问题的方法。

我正在使用Spree商业分支Solidus开始一个项目。虽然我已经准备好认真并开始发展,但我创造了一个新的项目广告,我碰到了这个令人讨厌的错误:

Bundler could not find compatible versions for gem "rails":
  In snapshot (Gemfile.lock):
    rails (= 5.1.2)

  In Gemfile:
    rails (~> 5.1.2)

    solidus was resolved to 1.0.0, which depends on
      solidus_core (= 1.0.0) was resolved to 1.0.0, which depends on
        rails (~> 4.2.0)

Running `bundle update` will rebuild your snapshot from scratch, using only
the gems in your Gemfile, which may resolve the conflict.

并且bundle update没有解决我的问题...我的解决方案已经用完了,并且会非常感谢帮忙解决这个问题。

由于

1 个答案:

答案 0 :(得分:2)

Bundler通过向您展示您对rails gem的版本要求不兼容来帮助您。

您的gemfile中列出了rails (~> 5.1.2),而solidus gem依赖于rails (~> 4.2.0),因此您的应用应该使用哪个版本的rails存在冲突。

你有使用solidus 1.0.0版的原因吗?看起来最新版本的solidus目前是2.0.2。更高版本的solidus将为rails列出更新的依赖项,这将允许您的应用程序使用rails 5 +。

将gemfile中的solidus版本更新为更新版本,看看是否允许bundler成功安装。