执行npx prisma generate报EPERM错误无法删除query_engine文件如何解决
解决方案
这个EPERM报错属于Windows系统的特有问题,核心原因是query_engine-windows.dll.node文件被其他进程锁定,无法被修改或删除,导致prisma generate执行写入操作时失败。你可以按优先级尝试以下修复操作:
- 终止所有占用进程
先关闭当前项目运行的开发服务、所有打开的相关终端,可暂时关闭IDE,之后执行命令结束所有残留的Node.js进程:taskkill /f /im node.exe
同时可以暂时关闭Windows Defender实时保护3-5分钟,或者将项目目录添加到Windows Defender的排除列表,避免安全软件扫描时锁定DLL文件。 - 全量清理缓存后重新安装
彻底删除以下文件或目录:node_modules文件夹- 包管理锁文件:
package-lock.json/yarn.lock/pnpm-lock.yaml - Prisma自动生成的缓存目录:
node_modules/.prisma
之后依次执行命令:
npm install npx prisma generate - 调整权限与存放目录
如果你的项目存放在C盘的系统受保护目录(比如Program Files、系统级用户目录),可以将项目迁移到其他非系统盘的普通目录;或者右键选择「以管理员身份运行」终端,再执行npx prisma generate命令。 - 对齐依赖版本
若以上操作都无效,检查package.json中prisma和@prisma/client的版本号,确保两者版本完全一致,优先升级到最新稳定版后重新安装依赖。
内容的提问来源于stack exchange,提问作者Ghyath Darwish
相关产品推荐
相关产品推荐

