ruby-on-rails - 在 Ruby 和 Rails 升级期间 Bundler 显示依赖错误
问题描述
请在这里帮助我,我正在升级 ruby 和 rails 并且依赖的 gems 需要升级。
早期的 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 应该是可以接受的,并且显然使用 version = 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 ,最终没有出现此问题。
推荐阅读
- python - 熊猫从多列的年份列表中计算总年数
- python - 如何将 Matlab 中的 listdlg 转换为 Python
- node.js - 为什么我的带有嵌套异步函数的 try-catch 异常没有抛出?
- c# - 检索和使用在 ComboBox 中选择的值
- mongodb - 在 MongoDB 操作中使用变量的值
- android-studio - 从 Android Studio 启动的模拟器上的这些圆圈是什么?
- azure-devops - 检查/了解 Azure Devops 中的构建是由手动还是 CI 触发的最佳方法
- xamarin - 如何从 Xamarin Forms UWP 中删除/替换选择器下拉图标?
- java - 通过覆盖spring实现一种返回标头的方法
- arrays - 尝试从 2 个数组中找到最小的数组元素会返回 0(不起作用),而其他的则有效。(C 语言)