使用pnpm执行scandir时触发EPERM权限错误,排查无果求技术支持
解决pnpm构建时EPERM: operation not permitted, scandir 错误
针对你遇到的pnpm构建时扫描@prisma/client目录出现权限拒绝的问题,试试以下几个方案:
以管理员身份运行终端
Windows下权限问题常和运行权限挂钩,右键终端(CMD/PowerShell/VS Code内置终端)选择「以管理员身份运行」,再执行构建命令:pnpm run build排查进程占用
可能有其他进程锁定了目标目录,比如杀毒软件实时扫描、文件资源管理器预览窗口、后台运行的Node进程:- 关闭所有打开该项目目录的文件窗口
- 打开任务管理器,结束所有Node.js、Prisma相关的进程
- 临时关闭杀毒软件的实时防护(仅测试用,之后务必恢复),再重新执行构建
更换pnpm存储目录
默认的pnpm存储目录可能存在权限隐患,手动指定一个权限明确的路径:- 设置新的存储路径:
(路径可以自定义,确保你对该文件夹有完全控制权限)pnpm config set store-dir "C:\pnpm-store" - 删除项目下的
node_modules和.next文件夹 - 重新执行
pnpm install和pnpm run build
- 设置新的存储路径:
强制重新生成Prisma客户端
手动重置Prisma客户端,避免缓存或权限残留:pnpm prisma generate --force执行完再运行构建命令。
检查Windows受控文件夹访问设置
打开Windows安全中心 → 病毒和威胁防护 → 管理设置 → 受控文件夹访问,查看是否阻止了pnpm或Node.js访问你的项目目录,把相关程序添加到允许列表中。
内容的提问来源于stack exchange,提问作者Joao Vitor
相关产品推荐
相关产品推荐

