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

NX Daemon进程终止连接,Angular项目无需重复删缓存的解决方案咨询

NX Daemon Terminated (Duplicate Undefined Project) - Root Cause & Permanent Fix

Root Cause

  • NX Daemon依赖项目配置的唯一性来高效处理任务和缓存,当Angular 17+的Vite缓存目录(.angular/cache/17.1.4/vite)下的临时依赖目录被NX误判为项目时,就会出现undefined的重复项目名——这些临时目录没有合法的project.json配置,NX读不到项目名称,直接触发Daemon崩溃。
  • 本质是NX的项目扫描逻辑和Angular Vite缓存的目录结构不兼容,或是NX版本对Angular 17的支持不完善,导致扫描范围错误覆盖了缓存目录。

Permanent Solutions

1. 让NX忽略Angular缓存目录

在项目根目录的nx.json里添加exclude配置,把Angular缓存目录排除在NX的项目扫描范围外:

{
  "nx": {
    "exclude": [
      ".angular/**",
      "node_modules/**"
    ]
  }
}

这从根源上避免NX把临时缓存目录当成项目识别,彻底解决重复项目的问题。

2. 升级NX到兼容Angular 17的最新版

如果是版本兼容性问题导致的扫描逻辑bug,直接升级NX到最新稳定版就能修复:

nx migrate latest

执行后按照终端提示完成依赖更新和迁移步骤即可。

3. 调整NX Daemon的监控规则(可选)

要是不想完全排除目录,也可以单独让Daemon监控文件变化时忽略缓存目录,在nx.json里修改daemon配置:

{
  "daemon": {
    "enabled": true,
    "watch": {
      "ignored": [".angular/**"]
    }
  }
}

4. 彻底清理缓存(配置生效后的收尾操作)

应用上述任意配置后,执行一次彻底的缓存重置,确保旧的错误缓存被清除:

nx reset

这个命令会一次性清理NX Daemon缓存和Angular本地缓存,比手动删目录更彻底。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 07:50:05