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

Flutter执行flutter build web时如何将自定义文件复制到build输出目录

Flutter构建web时自动复制自定义文件的配置方法

方案1:优先检查默认行为

  • Flutter执行flutter build web命令时,默认会将[Project-dir]/web目录下的所有文件、子目录完整复制到[Project-dir]/build/web构建输出目录,通常不需要额外配置。
  • 你可以先执行一次构建命令,直接查看build/web目录是否已经存在script.py文件,若存在可直接使用。

方案2:自定义构建脚本(默认行为不生效时使用)

如果因为Flutter版本差异、自定义过滤规则导致文件没有被自动复制,可以写一键构建脚本,将构建和复制操作合并:

Windows系统(Powershell脚本)

在项目根目录新建build_web.ps1文件,写入以下内容:

flutter build web
Copy-Item "./web/script.py" -Destination "./build/web/script.py"

后续构建时在终端执行.\build_web.ps1即可。

macOS/Linux系统(Shell脚本)

在项目根目录新建build_web.sh文件,写入以下内容:

#!/bin/bash
flutter build web
cp ./web/script.py ./build/web/script.py

先给脚本添加执行权限:chmod +x build_web.sh
后续构建时在终端执行./build_web.sh即可。

VSCode快速触发配置(可选)

如果你希望在VSCode中一键触发带自动复制的构建流程,可以修改.vscode/tasks.json配置:

  • 打开项目下的.vscode/tasks.json文件(没有就新建),添加以下配置:
{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "flutter-build-web",
      "type": "shell",
      // Windows系统把&&后的cp命令替换为Copy-Item "./web/script.py" -Destination "./build/web/script.py"
      "command": "flutter build web && cp ./web/script.py ./build/web/script.py",
      "group": {
        "kind": "build",
        "isDefault": true
      }
    }
  ]
}

后续按快捷键Ctrl+Shift+B(Windows/Linux)/Command+Shift+B(macOS)即可直接触发构建。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 03:36:03