报javascript heap out of memory错误需先定位进程归属:npm run崩溃是node子进程问题,应改package.json脚本加--max-old-space-size=4096;vscode主进程卡死需用code --max-memory=4096命令启动;extension host泄漏要配affinity和watcherexclude;remote-ssh远端崩溃则设remote.ssh.remoteserverenv。

报 JavaScript heap out of memory 错误,不是 VSCode 本身内存不够,而是你正在运行的 Node.js 进程堆内存超限——它和 VSCode 主界面、插件、文件监听器都无关,是独立子进程的事。直接加 --max-old-space-size=4096 能快速缓解,但必须分清是哪个进程在崩,否则参数加错位置毫无作用。
npm run 崩溃:改 package.json 的 script 字段
你在终端里执行 npm run dev 或 npm run build 时看到错误,说明是 CLI 工具(如 vue-cli-service、vite、webpack)启动的 Node 子进程溢出了。
- Linux/macOS:直接在脚本前加
node --max-old-space-size=4096,例如:"dev": "node --max-old-space-size=4096 ./node_modules/.bin/vue-cli-service serve" - Windows:必须用
cross-env注入环境变量,否则set NODE_OPTIONS=...在脚本里不生效:"dev": "cross-env NODE_OPTIONS=--max-old-space-size=4096 vue-cli-service serve" - 值不建议超过
4096:设成8192很少真正解决问题,反而会掩盖构建配置缺陷(比如没排除node_modules或.d.ts文件) - 别装
increase-memory-limit:它只是自动往package.json里写参数,还可能覆盖你手动配的值
VSCode 主进程卡死/白屏:用 code 命令行启动并限主内存
打开 VSCode 就卡住、窗口空白、或刚加载就弹“内存不足”,这是 Electron 主渲染进程 RSS 内存飙高(常达 3GB+),和 Node 子进程完全无关。
使用一条命令部署ProbeChain Rydberg测试网代理节点。自动注册为Agent(NodeType=1),免gas,支持macOS/Linux/Windows。触发词:/r
- 绝对不要双击图标或从 Dock 启动——它绕不开默认参数
- 必须在终端执行:
code --disable-extensions --disable-gpu --max-memory=4096 . -
--max-memory=4096是 Electron 12+ 才支持的参数,单位 MB,只作用于主进程;--disable-extensions可跳过 GitLens、ESLint 等语言服务预热,省掉 500MB+ 内存 -
--max-old-space-size对主进程无效:VSCode 不是 Node.js 进程,这个参数只对 CLI 工具、远程tsserver等子进程起作用
Extension Host 内存持续上涨:配 affinity + watcherExclude
禁用所有插件后,保存大 JSON 或格式化时仍报错?大概率是 Extension Host 进程自己泄漏了——它和主进程、Node 子进程内存隔离,且默认无上限。
- 在项目根目录的
.vscode/settings.json中加:"extensions.experimental.affinity": { "*": 1 },强制每个扩展跑在独立子进程,避免一个泄漏拖垮全部 -
files.watcherExclude必须配对生效,规则要带尾部斜杠:"**/node_modules/**": true✅,"**/node_modules": true❌(VSCode 忽略) - 至少排除:
**/node_modules/**、**/dist/**、**/build/**、**/.git/**;pnpm 项目补**/node_modules/.pnpm/**,Turborepo 补**/.turbo/** -
search.exclude只影响搜索结果,不阻止监听器注册——它和files.watcherExclude不是一回事,两个都得配
Remote-SSH 远端崩溃:配 remote.SSH.remoteServerEnv
远程开发时,tsserver、searchService 都在远端以 Node 进程运行,默认无内存限制,大型项目极易被 OOM killer 杀掉。
- 在远程工作区的
.vscode/settings.json中添加:"remote.SSH.remoteServerEnv": { "VSCODE_NODE_OPTIONS": "--max-old-space-size=2048" } -
2048是稳妥起点;含大量.d.ts或嵌套依赖可试3072;超过4096很少必要 - 修改后必须完全关闭当前远程窗口(不只是 Reload Window),再重新 Connect 才生效
- 同步加固
search.exclude和files.watcherExclude,否则光调内存也扛不住递归扫描node_modules
最易被忽略的是进程归属判断:看到 JavaScript heap out of memory 第一反应不该是“VSCode 内存小”,而是先确认错误发生在哪一层——主进程、Extension Host,还是你敲的那条 npm run 命令?参数加错层,等于白调。










