2014-07-25 31 views
0

我問Rails創建使用以下命令遷移:Spree(rails)不會讓我創建遷移。說國際內部存在衝突。

$ rails g migration add_sale_price_to_spree_variants sale_price:decimal 

它失敗並返回以下輸出:

/Library/Ruby/Site/2.0.0/rubygems/specification.rb:2098:in `raise_if_conflicts': Unable to activate spree_core-2.3.1, because i18n-0.6.11 conflicts with i18n (= 0.6.9) (Gem::ConflictError) 
from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1286:in `activate' 
from /Library/Ruby/Site/2.0.0/rubygems.rb:196:in `rescue in try_activate' 
from /Library/Ruby/Site/2.0.0/rubygems.rb:193:in `try_activate' 
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:132:in `rescue in require' 
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:144:in `require' 
from /Users/byronshilly/Desktop/store/spree_simple_sales/lib/spree_simple_sales/engine.rb:3:in `<class:Engine>' 
from /Users/byronshilly/Desktop/store/spree_simple_sales/lib/spree_simple_sales/engine.rb:2:in `<module:SpreeSimpleSales>' 
from /Users/byronshilly/Desktop/store/spree_simple_sales/lib/spree_simple_sales/engine.rb:1:in `<top (required)>' 
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:126:in `require' 
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:126:in `require' 
from /Library/Ruby/Gems/2.0.0/gems/railties-4.1.4/lib/rails/engine/commands.rb:11:in `<top (required)>' 
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:73:in `require' 
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:73:in `require' 
from bin/rails:7:in `<main>' 

如果向右滾動,你會看到Unable to activate spree_core-2.3.1, because i18n-0.6.11 conflicts with i18n (= 0.6.9) (Gem::ConflictError)

如果是這樣,我一直有問題左,右與該依賴關係。任何人都知道我可以解決這個問題目前的狂歡指南是非常成問題的,儘管我正在一步一步跟進。

回答

0

至於你提到的正確方法是使用

bundle exec 

這發生,因爲在你的大禮包的應用程序使用不同的是,一個在你的系統中安裝一個國際化的版本。

Bundler以這種方式提供解決方案。 http://bundler.io/v1.1/bundle_exec.html

0

bundle exec添加到該命令的開頭修正了問題。不知道這是多麼恰當。