我正在尝试将gem(hydra-derivatives
)升级到版本3.3.2以查看它是否解决了我们遇到的错误。
hydra-derivatives 不是 Gemfile gem;它被捆绑为另一个gem的依赖项,称为hydra-works
。
bundle update --conservative
hydra-derivatives
但只是升级了水合物衍生物
3.2.2(&我们想要3.3.2)及其依赖mini_magick
从4.5.1到4.8.0 添加gem 'hydra-derivatives', '~> 3.3.2'
,但这给了我:
You have requested:
hydra-derivatives ~> 3.3.2
The bundle currently has hydra-derivatives locked at 3.2.1.
Try running `bundle update hydra-derivatives`
If you are updating multiple gems in your Gemfile at once,
try passing them all to `bundle update`
我不想运行bundle update hydra-derivatives
,因为我不希望它更新一堆不必要的宝石并导致问题,因此我为何会阅读--conservative
一个。无论如何我跑了这个测试它,它将目标宝石升级到只有3.2.2和15颗宝石!
答案 0 :(得分:2)
从Gemfile中删除hydra-works gem。
从已安装的gem位置手动删除gem及其依赖项,或者如果您使用rbenv
或rvm
运行bundle clean --force
将应用程序放在自己的Ruby环境中。
当心bundle clean --force
将删除Ruby版本中除Gemfile中指定的宝石之外的所有宝石。如果您有其他使用相同版本Ruby的应用程序,则必须重新安装该应用程序的gem,如果它们与您在此应用程序中使用的不同。
将此添加到您的Gemfile
gem 'hydra-derivatives', '~> 3.3.2'
gem 'hydra-works'
并运行bundle install
您应该在Gemfile.lock中看到正确的依赖版本