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

升级firebase-tools后无法构建部署Flutter Web应用至Firebase Hosting

Flutter Web部署Firebase Hosting失败排查方案

问题背景

本地执行flutter run -d chrome可正常运行应用,升级Flutter和firebase-tools后,通过flutter build web+firebase deploy --only hosting部署至Firebase Hosting,生产站点出现资源加载报错(截图显示flutter_bootstrap.js无法找到)。

排查与解决步骤

1. 确认base href替换结果

构建完成后,打开build/web/index.html检查<base href>的值,若仍为$FLUTTER_BASE_HREF未被替换,需手动指定base href重新构建:

# 部署在根路径用"/",子路径对应修改(如"/app/")
flutter build web --base-href "/"

2. 校验firebase.json配置

确保hosting配置指向正确的构建目录,并包含Flutter单页应用所需的重写规则:

{
  "hosting": {
    "public": "build/web",
    "ignore": [
      "firebase.json",
      "**/.*",
      "**/node_modules/**"
    ],
    "rewrites": [
      {
        "source": "**",
        "destination": "/index.html"
      }
    ]
  }
}

3. 验证构建产物完整性

检查build/web目录下是否存在flutter_bootstrap.js文件,若缺失,清理缓存后重新构建:

flutter clean
flutter build web --base-href "/"

4. 适配firebase-tools版本

升级后的firebase-tools可能与当前Flutter版本不兼容,尝试回退至之前可用版本或更新到最新稳定版:

# 回退到指定版本示例
npm install -g firebase-tools@12.8.0
# 或更新到最新版
npm install -g firebase-tools@latest

5. 本地模拟生产环境测试

使用Firebase本地模拟器验证构建产物,复现生产环境问题以便本地排查:

firebase emulators:start --only hosting

访问默认地址http://localhost:5000,确认是否出现相同报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 22:03:19