You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为Jekyll站点升级Cloudflare Pages至Ruby 3遇构建失败求助

解决Cloudflare Pages部署Jekyll Chirpy博客时rubygems版本不兼容问题

问题核心

构建报错sass-embedded-1.58.0-x86_64-linux-musl要求rubygems版本>=3.3.22,而当前版本为3.1.2,本质是Chirpy主题依赖的sass-embedded版本过高,与Cloudflare Pages默认Ruby环境的rubygems版本不匹配,且Cloudflare暂不支持Ruby3。回退主题版本无效是因为未锁定依赖版本,bundle仍会拉取高版本sass-embedded。

解决方案

1. 锁定sass-embedded到兼容版本

在项目根目录的Gemfile中添加指定版本的sass-embedded,选择对rubygems要求低于3.3.22的版本(如1.57.1):

gem "sass-embedded", "~> 1.57.1"

执行本地依赖更新:

bundle update sass-embedded

提交更新后的Gemfile和Gemfile.lock到GitHub仓库,触发Cloudflare重新构建。

2. 强制指定Ruby版本适配Cloudflare环境

在Gemfile顶部明确指定Cloudflare支持的Ruby版本(当前为2.7.x),避免依赖拉取不兼容版本:

ruby "~> 2.7.0"

重新执行bundle install更新依赖锁文件后提交。

3. 构建命令中手动升级rubygems(备选方案)

如果上述方法无效,尝试修改Cloudflare Pages的构建命令,先升级rubygems再执行构建:

gem update --system 3.3.22 && bundle exec jekyll b

注意:此方法依赖Cloudflare环境允许全局升级rubygems,若出现权限报错则放弃此方案,优先使用前两种。

内容的提问来源于stack exchange,提问作者user8619111

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 16:12:46