常见报错对照

Bun 高频错误信息的原因与处理路径,按发生阶段分组

最后更新于

安装与启动

报错常见原因处理
bun: command not found~/.bun/bin 不在 PATH重开终端;安装脚本的提示写入 shell 配置后需要重新加载
unzip is required to install BunLinux 缺少 unzipsudo apt install unzip(或对应发行版包名)后重跑安装脚本
Windows 上安装后立即报兼容性错误系统低于 Windows 10 1809升级 Windows;无绕过方案

依赖与锁文件

报错常见原因处理
lockfile had changes, but lockfile is frozenpackage.jsonbun.lock 不同步本地运行 bun install,审查差异后连同 bun.lock 一起提交
bun audit 提示缺少锁文件仓库没有 bun.lockbun install 生成锁文件;audit 依赖锁文件内容
bun audit --production 报未知参数该写法不受支持改用 bun audit --prod;monorepo 根目录过滤有已知缺陷
安装日志出现 Blocked postinstall依赖不在信任列表bun pm untrusted 查看;审查后 bun pm trust <pkg> 最小放行
Workspace 里 Cannot find package新增/移动包后未重新安装在仓库根目录运行 bun install;确认 workspaces 配置覆盖该目录
bun update--frozen-lockfile 失败锁文件写入缺陷更新后本地再跑一次 bun install 并提交(见已知问题

运行时

报错常见原因处理
EADDRINUSE / 端口被占用旧进程未退出或端口冲突换掉 PORT,或先结束占用进程;检查 --watch 留下的后台进程
error: Script not found "xxx"工作目录不对,或脚本名打错确认当前目录的 package.jsonbun run 不带参数可列出可用脚本
读取到旧的/意外的环境变量Bun 自动加载了目录里的 .env生产环境用 --no-env-file,只保留平台注入的变量
Bun.serve 流式响应约 10 秒后被截断默认 idleTimeout 为 10 秒评估后调大 idleTimeout,或对单请求用 server.timeout(req, 0),并保留应用级总超时

类型与测试

报错常见原因处理
Cannot find module 'bun:test'Bun 全局类型缺失未安装/未声明 Bun 类型bun add -d @types/bun;TypeScript 6 起需在 tsconfig.json 显式写 "types": ["bun"]
--isolate 下动态 import 顶层 await 模块失败1.3.14 的已知回归受影响套件暂时串行运行;跟踪已知问题
测试在 --parallel 下互相干扰共享端口、数据库或临时目录BUN_TEST_WORKER_ID 分配每 Worker 独立资源,或让该组保持串行

排错顺序

  1. bun --version 确认版本,再查版本特性矩阵排除“版本不够”。
  2. 确认工作目录与实际生效的 package.jsonbunfig.toml
  3. 用最小复现区分项目配置问题与 Bun 运行时问题。
  4. 已知问题oven-sh/bun issues,再决定升级或规避。