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

Bun的--watch模式实时更新失效问题求助

Bun --watch/--hot模式在Windows子系统Linux环境下不生效的排查方案

在Windows的Linux子环境(如WSL1/WSL2)中使用Bun运行代码时,添加--watch或--hot参数后,修改代码无法触发进程自动重启,终端仅打印一次启动日志,必须手动重启才能看到代码变更效果。

用户代码示例:

import { serve } from "bun";
console.log("I restarted at:", Date.now());

serve({
  port: 4003,

  fetch(request) {
    return new Response("Susdsdp");
  },
});

以下是排查方向:

  • 迁移代码到Linux原生文件系统:如果代码存放在Windows宿主的挂载目录(如/mnt/c/你的项目路径),WSL对这类目录的文件变更通知支持存在限制,Bun的watch机制可能无法感知到文件修改。把项目移到Linux子系统的原生路径(如/home/你的用户名/项目目录)再测试。
  • 升级Bun到最新版本:运行bun --version查看当前版本,旧版本可能存在跨环境的watch兼容性bug。执行bun upgrade升级到最新稳定版后重试。
  • 显式指定监听目标:运行命令时明确指定要监听的文件或目录,比如bun --watch ./index.js,避免Bun未正确识别监听范围。
  • 切换WSL版本:如果当前用的是WSL1,尝试切换到WSL2。WSL2的文件系统架构更接近原生Linux,文件变更通知的支持更完善。可通过wsl --list --verbose查看当前分发版版本,用wsl --set-version <分发版名称> 2完成切换。
  • 检查文件权限:确保Linux环境下项目文件的权限允许Bun读取和监听。用ls -l查看文件权限,若权限不足,可执行chmod -R 755 项目目录调整。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 08:17:08