如何为 Gemfile 指定最低捆绑器版本?

Posted

技术标签:

【中文标题】如何为 Gemfile 指定最低捆绑器版本?【英文标题】:How to specify minimum bundler version for Gemfile? 【发布时间】:2013-08-25 08:35:58 【问题描述】:

当我的 Gemfile 使用 :mri_20,并且以前版本的 bundler 不支持时,添加是个好主意

gem 'bundler', '~>1.3.5'

到 Gemfile?有没有更好的方法来强制执行最低捆绑器版本?

【问题讨论】:

【参考方案1】:

这不会对用于管理 Gemfile 中的 gem 的打包程序产生任何影响。使用的 bundler 版本是您当前 ruby​​ 环境中可用的版本。

管理此问题的最佳方法是使用 gemset - 您可以使用已知的工作版本的 bundler 创建 gemset,并在处理该项目时始终切换到该 gemset。

要检查捆绑器版本,请运行:

$ bundle --version
Bundler version 1.3.5

如果您想在运行 bundle install 时强制执行 bundler 版本,请将其放在 Gemfile 的顶部:

# Gemfile
if Gem::Version.new(Bundler::VERSION) < Gem::Version.new('1.3.5')
  abort "Bundler version >= 1.3.5 is required"
end

【讨论】:

那么,实际上您是说无法为 Gemfile 指定最低捆绑程序版本?

以上是关于如何为 Gemfile 指定最低捆绑器版本?的主要内容,如果未能解决你的问题,请参考以下文章

如何为 searchkick gem 设置不同的端口?

是否为 rails 应用程序在 Gemfile 中强制指定 Gem 版本

Rails:Gemfile.lock 需要“找不到捆绑程序”(2.2.11)。 (Gem::GemNotFoundException)

捆绑安装后Rails 3 Gemfile Gems未加载

如何降级捆绑器或升级导轨?

我应该在我的 Gemfile 中指定确切的版本吗?