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

回退Cloud Functions依赖的Puppeteer版本后仍未解决升级引发的错误

Cloud Functions Puppeteer回退版本后仍报错的解决办法

问题根源

你遇到的Could not find expected browser (chrome) locally. Run npm install to download the correct Chromium revision (1045629)错误,是因为Cloud Functions会缓存部署时的依赖包。即便回退Puppeteer版本、删除函数重新部署,旧版本(19.0)对应的Chromium缓存可能仍被复用,导致找不到18.2.1版本所需的浏览器文件。

具体解决步骤

  • 本地彻底清理依赖

    1. 删除本地node_modules文件夹:rm -rf node_modules
    2. 删除package-lock.json(npm用户)或yarn.lock(yarn用户)文件
    3. 重新安装指定版本:npm install puppeteer@18.2.1,确保package.json里的版本写死为18.2.1,不要带^或~这类自动升级的前缀
  • 强制跳过Cloud Functions部署缓存

    • 使用gcloud部署时添加--no-cache参数:gcloud functions deploy 你的函数名 --runtime nodejs16 --no-cache(替换为你的函数名和对应Node.js运行时版本)
    • 使用Firebase CLI部署时添加--no-cache参数:firebase deploy --only functions:你的函数名 --no-cache
  • 验证本地依赖版本
    执行npm list puppeteer,确认输出的版本为18.2.1,避免lock文件残留旧版本配置

备选方案

如果上述步骤无效,可尝试给函数添加一个临时环境变量(比如FORCE_DEPLOY=1),部署完成后再删除该变量,这样会触发全新的部署流程,彻底绕过缓存。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 19:30:53