0

我在 aws c9 中工作,我正在尝试将我的应用程序发送到 heroku,但它一直告诉我我正在运行错误版本的捆绑程序,所以我在gem install bundler本地运行并得到 2.0.1,但在 Heroku 上它一直在运行 1.17.1我不能改变这个版本。

4

1 回答 1

1

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

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

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

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

编辑

这可能是个问题,因为您的本地版本的 bundler 比这晚。如果您在本地运行 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
于 2019-01-07T18:52:05.133 回答