2015-10-15 78 views
-1

我在尝试更新应用程序,第一步使用Rails 3.24.0。由于railties而有问题。我每次运行bundle update rails它抛出这个错误Upgrade Rails 3.2 to 4.0

Bundler could not find compatible versions for gem "railties": 
In Gemfile: 
railties (~> 3.2.0) ruby 

railties (~> 3.2.0) ruby 

railties (>= 3.1) ruby 

railties (~> 3.1) ruby 

railties (< 5.0, >= 3.0) ruby 

railties (>= 3.1.0) ruby 

railties (< 5.0.0, >= 3.0.0) ruby 

railties (>= 3.1) ruby 

mercury-rails (>= 0) ruby depends on 
    railties (~> 3.2) ruby 

railties (>= 3.2.16) ruby 

railties (< 4.1, >= 3.1) ruby 

railties (>= 3.0) ruby 

railties (>= 3.0.0) ruby 

railties (< 5.0, >= 3.2) ruby 

rails (= 4.0.3) ruby depends on 
    railties (= 4.0.3) ruby 

我已经安装了导轨4.0.0 rails (4.2.4, 4.0.3, 4.0.1, 4.0.0, 3.2.20)

我的宝石文件看起来像这样:

source 'https://rubygems.org' 
ruby '2.1.6' 

gem 'rails', '4.0.3' 
+0

Mercury rails依赖于rails 3.2,似乎自2013年底以来似乎没有提交,因此看起来您需要自行升级或切换为其他内容。我猜你还有其他一些需要更新的宝石也是由于类似的问题。 –

+0

@japed这确实得到了水银轨道的消息,但仍然得到railties问题。 – covard

+0

我假设你的其他一些宝石也有问题,我会将它们全部评论出来,然后逐一读取它们以找到导致依赖项不匹配错误的那些错误,然后根据情况更新它们。 –

回答

1

如果你没有用的问题此:

尝试删除Gemfile.lock然后运行:

bundle install 

如果失败,请从Gemfile删除版本号。然后,再试一次。

+0

删除'Gemfile.lock'将无济于事,至少水银轨有版本号在宝石中指定。 –

+1

删除/更新一堆版本号后仍然存在问题。由于我在一个分支上,我决定只删除.lock文件和bundle install。终于得到了一切安装 – covard