Heroku上的Bundler无法运行正确的版本

时间:2019-01-07 18:34:14

标签: ruby-on-rails heroku gem-bundler

我正在aws c9中工作,并且试图将我的应用程序发送到heroku,但它总是告诉我我运行了错误版本的捆绑软件,所以我在本地运行gem install bundler,但我得到了2.0.1,但是在Heroku上,它继续运行1.17.1,我无法更改此版本。

1 个答案:

答案 0 :(得分:1)

Heroku出于自身原因而将捆绑器版本固定为:

  

Heroku上的Bundler版本经过精心策划。在支持新的Bundler功能和稳定性之间需要取得平衡。我们在管理Bundler版本时所做的工作可确保最大的稳定性,并避免在Bundler发生更改,错误修复或安全问题已由Heroku修补时,弃用和通知周期。

https://devcenter.heroku.com/articles/bundler-version

在撰写本文时,它们仍在1.17.1上,但这通常不是问题。

编辑

这可能是个问题,因为您的捆绑软件本地版本晚于该版本。如果您在本地运行bundler 2+,则尤其如此,因为这会创建一个Gemfile.lock,不允许从中安装旧版本。

如果是这种情况,则需要降级本地版本并重新捆绑:

local> gem uninstall bundler
local> gem install bundler -v 1.17.1 (or whatever version)
local> rm Gemfile.lock
local> bundle install