Ubuntu22.04下VSC调试器频繁断开、断点不同步问题求助
检查 Node.js 版本与调试协议兼容性
确认本地 Node.js 版本是否匹配 Next.js 14.1 推荐要求(18.17+ 或 20.6+)。Ubuntu 下若使用系统自带 Node 或非官方源安装的版本,可能存在调试协议适配问题。用node -v查看版本,必要时通过 nvm 切换到官方推荐版本。验证 VS Code 插件与安装权限
确保 JavaScript Debugger 插件为最新版。若 VS Code 是通过 Snap 安装的,可能存在文件系统访问限制,尝试改用 deb 包安装,或在 Snap 权限设置中开启完整文件系统访问。手动添加调试参数测试连接
跳过 launch.json,直接在启动命令中加入调试参数:NODE_OPTIONS='--inspect=0.0.0.0:9229' npx nx run inspec:serve:development再用 VS Code 的「Attach to Node Process」功能手动选择进程,观察是否还会断开。如果此方式能稳定连接,说明问题出在 launch.json 配置而非系统环境。
排查端口与防火墙限制
执行sudo ufw allow 9229/tcp开放默认调试端口,再用lsof -i :9229检查端口是否被占用,若有则在 launch.json 中修改port字段更换端口。调整 VS Code 调试优化设置
在 VS Code 设置中搜索「Debug: Node Options」,添加--no-lazy参数强制 Node 不延迟编译代码;同时关闭「Debug: Auto Attach」选项,避免自动附加干扰手动调试配置。检查文件路径大小写一致性
Ubuntu 是大小写敏感文件系统,Windows 则不是。排查项目文件路径、组件导入路径是否存在大小写不一致的情况(比如导入components/Header.js实际文件是Components/header.js),这类问题会干扰 source map 映射,导致调试连接异常。测试纯 Next.js 环境
临时创建一个不含 NX 的纯 Next.js 14.1 项目,在相同 Ubuntu 环境下配置调试。如果纯项目能正常调试,说明问题出在 NX 与 Ubuntu 的交互上,尝试更新 NX 到最新稳定版,或检查nx.json中是否有影响调试的配置项。
内容的提问来源于stack exchange,提问作者Vxvy_

