在 Windows 上清理 npm 包缓存,可以先查明实际缓存目录,再运行 npm cache clean --force。它删除可复用的包缓存,不会移除项目里已经安装的 node_modules。如果目的是处理安装报错,应先试 npm cache verify,不要把彻底清空缓存当成通用修复。
清理前先找到缓存
打开“开始”,搜索“命令提示符”,使用平常开发时的 Windows 账户启动。以下步骤假定电脑已经安装 Node.js 和 npm,先执行:
npm --version
npm config get cache
第二条命令会输出当前生效的缓存路径。Windows 常见默认值为 %LocalAppData%\npm-cache,但配置可以改变它。把输出的路径粘贴到文件资源管理器地址栏,打开文件夹“属性”查看大小,此时先不要删除。
后续操作使用同一个终端和账户。如果项目有专属 npm 配置,应从该项目目录运行路径查询,确认安装时使用的配置。换成其他 Windows 账户启动终端,查询到的可能是另一份缓存。
在“文件资源管理器 → 此电脑”中记下缓存所在驱动器的可用空间。缓存本身很小时,清理它无法解决远大于其体积的空间问题。判断依据应是自己的测量,不是他人的截图。
安装失败时先校验
先停止正在运行的 npm 安装任务,再执行:
npm cache verify
校验会检查完整性并清理不再需要的缓存数据,所以它不是完全只读的容量查询。如果必须保留当前缓存状态,应在执行前停下;npm 的缓存维护没有撤销按钮。
npm 缓存官方说明介绍了为何通常无需为了损坏问题清空全部缓存:npm 会检查缓存数据,并在需要时重新获取。校验完成后,重试原来的安装,阅读实际报错。
认证失败、仓库不可达和依赖不兼容需要分别处理。不要看到错误里有 npm 就继续重复删除。先保留错误信息,确认失败发生在哪一步,再考虑其他调整。
为腾出空间清理包缓存
如果需要这部分空间,而且以后可以重新下载包,运行:
npm cache clean --force
这是没有内置回滚功能的删除操作。--force 是这条清理命令的要求,不应因此把它加到其他 npm 命令上。命令删除缓存,不会经过文件资源管理器通常的回收站流程。
没有命令可以恢复刚才那份原始缓存。后续安装可以在仓库和认证可用时重新获取所需数据。如果即将离线工作,或者依赖目前无法访问的私有仓库,应推迟清理,不要假定所有内容随时都能补回。
完成后重新检查文件夹“属性”和驱动器可用空间。仍然存在 npm 缓存文件夹,不一定表示清理失败:包缓存位于 npm 缓存区域内,其他 npm 数据可能保留。不要因此直接删除整个目录。
区分共享缓存和项目文件
共享缓存用于复用下载数据,项目的 node_modules 则存放已安装依赖。源代码和依赖清单也是项目的一部分,需要分别对待。
本次操作不要改动 node_modules、package.json 或 package-lock.json。删除已安装依赖会增加重新安装的工作;删除锁文件还可能改变后续安装解析依赖的结果。这些都不属于缓存清理步骤。
如果电脑有多个项目,即使共享缓存很小,各项目的依赖目录仍可能占据很多空间。清理共享缓存不会移除这些目录,反复清理也无法回收它们占用的空间。
也不要把 npm 命令用于 pnpm 的存储目录或 Yarn 缓存。先确定文件夹属于哪个包管理器,再选择维护方式。
缓存反复增长时如何选择
新的安装可以再次生成缓存。应权衡是否值得保留这些可复用的下载内容,而不是每次安装后都自动删除。
如果想把未来的缓存写入另一驱动器,可以设置 npm 缓存路径。选择有足够空间、始终可用的本地目录;下面的例子假定 D: 已存在。先用 npm config get cache 记录原路径,再执行:
npm config set cache "D:\npm-cache" --location=user
npm config get cache
这会修改用户级设置,不会搬走已有缓存。项目配置或环境变量可能覆盖它,应以安装所用终端里第二条命令的结果为准。配置优先级见 npm 配置参考。
回滚时,把缓存设置回之前记录的准确路径。如果此前没有用户级缓存覆盖项,可以用 npm config delete cache --location=user 删除这次新增的设置。D: 不可用时,这项配置也不适合继续使用,应先恢复再安装。
不要仅因示例中出现了其他盘符就照搬设置。对于经常拔除外接存储的笔记本,缓存放在始终可用的驱动器上可能更省事。
找不到 npm 或遇到权限错误
命令提示符找不到 npm 时,先回到平常能运行 npm 的开发环境,确认使用的是哪套安装。不要猜测缓存路径,然后用直接删除代替定位。
遇到权限错误,先核对输出路径和 Windows 账户,关闭安装任务后再用平常账户重试。不要为解决一个原因不明的错误,修改整个 AppData 的所有权,或把所有操作都改为管理员运行。
如果 npm 缓存不是主要占用来源,可以继续参考 Windows 清理指南。npm、Windows 更新缓存和个人下载文件应分别检查。
在 AiCleanDisk Pro 中检查开发缓存
AiCleanDisk Pro的自动清理项目包含 npm 缓存,开发类项目可通过“显示所有项目”查看。每个项目都有风险级别,执行前会出现确认窗口。系统盘扫描和自动清理免费,但 AI 自动清理除外;其他驱动器扫描、AI 分析、AI 自动清理和文件夹迁移需要许可证。许可证为 30 天 4.99 美元、六个月 16.90 美元或一年 19.90 美元,一次性付款,不自动续费。