如何修复Prisma与TypeScript中的种子文件ENOENT报错?
解决
yarn prisma db seed的ENOENT错误 这个错误的核心是系统找不到ts-node命令,或是无法正确定位种子文件,以下是几种可行的解决方法:
1. 安装缺失的依赖
确保ts-node、typescript和@types/node已作为开发依赖安装到项目中:
yarn add -D ts-node typescript @types/node
安装完成后重新执行种子命令:
yarn prisma db seed
2. 使用本地依赖执行命令
如果已安装依赖但yarn仍找不到ts-node,可以通过yarn exec强制调用项目本地的ts-node,修改package.json中的seed配置:
"prisma": { "seed": "yarn exec ts-node prisma/seed.ts" }
也可以改用npx调用本地依赖:
"prisma": { "seed": "npx ts-node prisma/seed.ts" }
3. 替换ts-node为tsx(可选)
如果ts-node存在兼容性问题,可尝试用更轻量的tsx替代:
先安装tsx:
yarn add -D tsx
再修改seed配置:
"prisma": { "seed": "tsx prisma/seed.ts" }
4. 检查文件路径和大小写
确认prisma/seed.ts文件确实存在,且文件名的大小写和配置中的一致(Linux/macOS系统对文件名大小写敏感)。
内容的提问来源于stack exchange,提问作者Ann Kilzer
相关产品推荐
相关产品推荐

