当我在开发/测试时,我在控制台中不断收到这个错误
Warning: the running version of Bundler (2.1.2) is older than the version that created the lockfile (2.1.4). We suggest you to upgrade to the version that created the lockfile by running `gem install bundler:2.1.4`.
它根本没有阻止我,而是让我很烦恼。我知道最简单的解决方案就是更新我的Gemfile.lock。
BUNDLED WITH
2.1.2
但我想永久解决这个问题。我尝试
gem uninstall bundler
然后
gem install bundler -v 2.1.4
它让我不断给出这个错误
Gem bundler-2.1.2 cannot be uninstalled because it is a default gem
当我尝试先安装2.1.4,然后删除bundler 2.1.2时,控制台会给我这个输出。
Gem bundler-2.1.2 cannot be uninstalled because it is a default gem
Successfully uninstalled bundler-2.1.4
这个问题有什么解决办法吗?提前感谢
根据Anne van Rossum,gem update --system
为我解决了这个问题。
只需运行gem install bundler:2.1.4
,不要担心ruby附带的旧版本,不应该使用它。
我修复了它!。如果您使用的是rvm,那么您必须转到您在该特定项目上使用的ruby版本(例如"rvm use 2.7.0"(,然后运行"gem update--system">
您需要执行以下操作,以确保使用的回购使用正确的Bundler默认版本。
-
您可以运行以下操作,但这可能会带来问题,因为当所有操作都更新时,它可能会破坏系统上的本地宝石
gem update --system
-
以下方法是确保Bundler更新的一种更安全的方法
- 获取您的gem环境并注意INSTALLATION_DIRECTORY
gem environment
- 然后运行以下操作
cd <INSTALLATION DIRECTORY>/specifications/default rm bundler-<old_default_version>.gemspec gem install --default bundler -v <new_default_version>
- 如果您已经执行了2,但仍然不起作用,则运行
确保您的本地回购使用正确的版本gem install bundler:<new_default_version>
另一个选项是更新到最新版本:
gem update bundler
除非使用旧版本有特定原因(例如,最新版本中有错误,或者它们不再兼容(,否则您可以按照警告消息安装特定版本:
警告:Bundler的运行版本(2.2.32(比创建锁定文件的版本(2.3.4(旧。我们建议您通过运行
gem install bundler:2.3.4
升级到创建锁定文件。
gem install bundler:2.3.4
在我的案例中,这是安装失败时显示的唯一错误消息。我浪费了很多时间试图修复它,但事实证明这只是一个警告,而不是阻止安装的实际错误
为了看到实际的错误消息,我不得不运行bundle install --verbose
Ruby附带了一组默认的gem<Bundler就是其中之一。Ruby附带的>bundler的默认版本很快就会过时。要更新您的标准宝石,请运行
gem update --system
有关更多信息,请参阅RubyGems命令参考。
如果您不想更新您的标准gem,您也可以在捆绑包(Gemfile.lock
(的上下文中更新Bundler。这是可能的,因为Bundlerv1.14。
bundle update --bundler
自Bundlerv2.3.5(2022年1月(以来,此警告的时间应已结束。它现在自动获取匹配的远程版本并安装它
Bundler 2.3.17 is running, but your lockfile was generated with 2.3.7. Installing Bundler 2.3.7 and restarting using that version.
Fetching gem metadata from https://rubygems.org/.
Fetching bundler 2.3.7
Installing bundler 2.3.7
…
我删除了gemfile.lock文件,然后再次绑定以构建新的依赖项。
https://github.com/rubygems/rubygems/issues/3202