2017-04-17 36 views
0

我是Ruby和Rails的新手,我試圖遵循Spree的指令,但在執行bundle install時遇到了依賴關係解析的問題。我搜索了一堆類似的問題,但在他們所有的gemfile中有幾個「根」寶石。在我的情況下,我有單根根spree (~> 3.1.0.rc1)甚至相同的依賴樹。它看起來像單個寶石軌4.2.6取決於兩個版本actionpack 5.0.2和4.2.6。怎麼可能?gemfile結果衝突的單一依賴關係

Bundler could not find compatible versions for gem "actionpack": 
In Gemfile: 
    spree (~> 3.1.0.rc1) was resolved to 3.1.0.rc1, which depends on 
    spree_core (= 3.1.0.rc1) was resolved to 3.1.0.rc1, which depends on 
     rails (~> 4.2.6) was resolved to 4.2.6, which depends on 
     actionpack (= 5.0.2) 

    spree (~> 3.1.0.rc1) was resolved to 3.1.0.rc1, which depends on 
    spree_core (= 3.1.0.rc1) was resolved to 3.1.0.rc1, which depends on 
     rails (~> 4.2.6) was resolved to 4.2.6, which depends on 
     actionpack (= 5.0.2) 

    spree (~> 3.1.0.rc1) was resolved to 3.1.0.rc1, which depends on 
    spree_core (= 3.1.0.rc1) was resolved to 3.1.0.rc1, which depends on 
     rails (~> 4.2.6) was resolved to 4.2.6, which depends on 
     actionpack (= 4.2.6) 

P.S.我能夠通過在我的gemfile中指定gem 'rails', '>= 4.2.7'來解決我的問題。這仍然滿足條件〜> 4.2.6並且不包含描述的問題。但我仍然很好奇如何描述狀態。

謝謝!

+0

可以粘貼你的'Gemfile'和'Gemfile.lock'? – Gaston

回答

0

這是因爲您使用的Rails和Spree的版本不匹配,所以它們與彼此不兼容。

Rails的5:

gem 'spree', '~> 3.2.0'

軌道4,5:

gem 'spree', '~> 3.1.0'