在 Ruby 和 Rails 升级 Bundler 期间显示依赖性错误

During Ruby and Rails upgrade Bundler showing dependency error

请帮帮我,我正在升级 ruby 和 rails 并且依赖的 gem 也需要升级。

之前ruby版本是2.3.0,rails是4.2.x,现在升级到2.6.0,rails到6.0.4

如果你看到下面的错误,actionpack 被解析为 6.0.4 并且 public_activity 还需要 actionpack >=3.0.0 这意味着 6.0.4 应该是可以接受的并且显然 rails 使用版本 = 6.0.4,那么为什么会报错呢。有没有高手能讲讲知识。

Bundler could not find compatible versions for gem "actionpack":
  In Gemfile:
    actionpack (~> 6.0, >= 6.0.4)

    public_activity (~> 1.6, >= 1.6.4) was resolved to 1.6.4, which depends on
      actionpack (>= 3.0.0)

    rails (= 6.0.4) was resolved to 6.0.4, which depends on
      actionpack (= 6.0.4)

Bundler could not find compatible versions for gem "activemodel":
  In Gemfile:
    activemodel (~> 6.0, >= 6.0.4)

    active_model_otp was resolved to 1.2.0, which depends on
      activemodel

    paperclip (~> 6.1) was resolved to 6.1.0, which depends on
      activemodel (>= 4.2.0)

    rails (= 6.0.4) was resolved to 6.0.4, which depends on
      activemodel (= 6.0.4)

Bundler could not find compatible versions for gem "activesupport":
  In Gemfile:
    activesupport (~> 6.0, >= 6.0.4)

    delayed_job (~> 4.1, >= 4.1.9) was resolved to 4.1.9, which depends on
      activesupport (>= 3.0, < 6.2)

    factory_girl_rails (= 4.2.1) was resolved to 4.2.1, which depends on
      factory_girl (~> 4.2.0) was resolved to 4.2.0, which depends on
        activesupport (>= 3.0.0)

    jbuilder (~> 2.10) was resolved to 2.11.2, which depends on
      activesupport (>= 5.0.0)

    paperclip (~> 6.1) was resolved to 6.1.0, which depends on
      activesupport (>= 4.2.0)

    rails (= 6.0.4) was resolved to 6.0.4, which depends on
      activesupport (= 6.0.4)

Bundler could not find compatible versions for gem "capybara":
  In Gemfile:
    capybara (= 2.1.0)

    cucumber-rails (= 1.4.0) was resolved to 1.4.0, which depends on
      capybara (>= 1.1.2)

Bundler could not find compatible versions for gem "rack":
  In Gemfile:
    rails (= 6.0.4) was resolved to 6.0.4, which depends on
      actionpack (= 6.0.4) was resolved to 6.0.4, which depends on
        rack (~> 2.0, >= 2.0.8)

    sprockets (= 2.11.0) was resolved to 2.11.0, which depends on
      rack (~> 1.0)

Bundler could not find compatible versions for gem "rails":
  In Gemfile:
    rails (= 6.0.4)

    cucumber-rails (= 1.4.0) was resolved to 1.4.0, which depends on
      rails (>= 3.0.0)

Bundler could not find compatible versions for gem "railties":
  In Gemfile:
    coffee-rails (~> 5.0) was resolved to 5.0.0, which depends on
      railties (>= 5.2.0)

    devise was resolved to 4.8.0, which depends on
      railties (>= 4.1)

    doorkeeper (= 4.2.5) was resolved to 4.2.5, which depends on
      railties (>= 4.2)

    factory_girl_rails (= 4.2.1) was resolved to 4.2.1, which depends on
      railties (>= 3.0.0)

    rails (= 6.0.4) was resolved to 6.0.4, which depends on
      railties (= 6.0.4)

Bundler could not find compatible versions for gem "rotp":
  In Gemfile:
    rotp (~> 3.3.0)

    active_model_otp was resolved to 1.2.0, which depends on
      rotp

Bundler could not find compatible versions for gem "will_paginate":
  In Gemfile:
    will_paginate (= 3.0.5)

    bootstrap-will_paginate (= 0.0.10) was resolved to 0.0.10, which depends on
      will_paginate


我正在回答我自己的问题,因为它经过多次迭代得到解决。

我删除了Gemfile.lock,然后在Gemfile中我开始一个一个地输入Gems,然后每次运行 bundle install,最终没有出现这个问题。