netlify cms部署出现错误,表明需要捆绑软件v2,但使用捆绑软件v2

时间:2019-03-01 16:46:48

标签: jekyll bundler netlify

当尝试部署存储在github上的jekyll网站以netlify cms时,构建过程会引发此错误

10:54:13 AM: Using ruby version 2.3.6
10:54:13 AM: Using PHP version 5.6
10:54:13 AM: Started restoring cached ruby gems
10:54:13 AM: Finished restoring cached ruby gems
10:54:13 AM: Installing gem bundle
10:54:13 AM: You must use Bundler 2 or greater with this lockfile.
10:54:13 AM: Error during gem install
10:54:13 AM: failed during stage 'building site': Build script returned non-zero exit code: 1
10:54:13 AM: Error running command: Build script returned non-zero exit code: 1
10:54:13 AM: Failing build: Failed to build site

请注意应使用捆绑器2或更高版本。

在GemFile.lock中

最后显示。...

BUNDLED WITH
2.0.1

任何人都知道发生了什么事,或者鉴于站点似乎已经满足要求,我该如何调查/解决此构建错误。

是不是告诉我需要配置netlify构建过程以使用Bundler 2?如果可以的话?

2 个答案:

答案 0 :(得分:1)

您可以将Gemfile.lock从存储库中删除,因为Netlify将使用您的Gemfile为每个构建构建快照。

  1. Gemfile.lock添加到.gitignore
  2. 删除Gemfile.lock
  3. 提交更改并推送。

在不起作用的情况下,撤消那些更改,然后将Bundler降级为v1.17.2

  1. gem uninstall bundler
  2. gem install bundler --version '1.17.3'
  3. bundle update
  4. 提交更改并推送。

答案 1 :(得分:1)

感谢该博客的回答。 https://stollerys.co.uk/2019/01/12/you-must-use-bundler-2-or-greater-with-this-lockfile

Netlify构建服务器不使用捆绑程序的V2,因此可以使用Barfs。

因此不得不将我的本地版本降级:

gem uninstall bundler

然后安装netlify兼容版本

gem install bundler -v 1.17.1

删除GemFile.lock

通过运行重新生成

bundle install

将文件暂存为git,然后将其推送到github

git commit -am "Downgraded bundler for netlify compatibility"
git push

这触发了netlify的构建,并且起到了治疗作用。