[尝试部署]:您必须使用带有此锁定文件的 Bundler 2 或更高版本

Posted

技术标签:

【中文标题】[尝试部署]:您必须使用带有此锁定文件的 Bundler 2 或更高版本【英文标题】:[Trying to Deploy]: You must use Bundler 2 or greater with this lockfile 【发布时间】:2019-06-20 14:39:05 【问题描述】:

对 Ruby 和 Ruby on Rails 非常陌生,因此请提前致歉。我发现了很多与此类似的帖子,但到目前为止这些建议对我没有用。

当我尝试部署时,我发现我正在使用的 Bundler 版本与 Heroku 的不匹配,但无法让它们匹配。

我试过这个,看起来它可以工作,但没有运气。 You must use Bundler 2 or greater with this lockfile

有没有人有任何想法,或者你能告诉我你需要什么信息来提供帮助吗?

非常感谢!

【问题讨论】:

【参考方案1】:

    删除你的Gemfile.lock

    安装旧版本的 bundler,例如

gem install bundler -v 1.17.3
    在您的项目目录中运行此捆绑程序
bundle _1.17.3_ install
    进行任何提交,例如
git commit -am "Bundler 1.17.3 was installed"
    运行
git push heroku master
    微笑

【讨论】:

【参考方案2】:

我在尝试推送到我的 Heroku 项目时也遇到了这个问题。在另一个问题中找到了答案,它对我有用:您必须在此锁定文件中使用 Bundler 2 或更高版本

运行:heroku buildpacks:set https://github.com/bundler/heroku-buildpack-bundler2

然后再次尝试推送您的应用。

【讨论】:

感谢您的回复!可悲的是,这一步对我不起作用,但上面的方法对我有用。【参考方案3】:

我为此苦苦挣扎,在看到另一个 comment 后,我意识到当我升级最新版本的 Ruby 时,它与 Bundler 不兼容。我卸载了 Ruby,安装了 Ruby 2.4.5-1 并重新安装了我的 gem(包括 Rails)。我现在可以使用 Rails 并且不再出现 Bundler 错误。

【讨论】:

以上是关于[尝试部署]:您必须使用带有此锁定文件的 Bundler 2 或更高版本的主要内容,如果未能解决你的问题,请参考以下文章

Vmware提示以独占方式锁定此配置文件失败。另一个正在运行的VMware进程可能正在使用配置文件

azurew网站持续部署 - Web Deploy无法修改目标上的文件“XXX”,因为它已被外部进程锁定

Heroku部署,带有MongoDB错误:连接被拒绝

您尝试访问的存储桶必须使用指定的端点进行寻址,同时从 jenkins 上传到 s3

带有 SSL 和证书的 iPhoneHTTPServer

如果给定文件或目录被锁定(由任何进程使用),如何检查命令行?