Next.js 15在Vercel构建失败:已装@types/node仍报错求助
在Vercel上构建Next.js 15项目时,执行命令 npm install && npx prisma generate && npm run build 退出码为1,错误提示要求安装@types/node,但项目的devDependencies中已配置该依赖,且存在tsconfig.json文件。已尝试重装依赖、切换Node版本、无缓存构建等操作,问题仍未解决。
检查Vercel项目的Node版本配置
Vercel默认的Node版本可能和本地开发版本不匹配,导致依赖安装异常。进入Vercel项目的「Settings」→「General」→「Node.js Version」,设置为和本地一致的版本(比如v20.x,Next.js 15推荐的版本)。确认tsconfig.json的types配置
确保tsconfig.json中包含node类型:{ "compilerOptions": { "types": ["node"] } }如果已经配置,尝试删除
node_modules和package-lock.json后重新本地构建,确认本地能正常编译,再推送到Vercel。将@types/node移至dependencies
部分构建环境可能不会安装devDependencies(虽然Vercel默认会安装,但某些自定义配置可能例外)。把@types/node从devDependencies移到dependencies中,重新安装依赖后推送:npm uninstall @types/node --save-dev npm install @types/node --save调整Vercel的构建命令
尝试拆分构建命令,明确指定安装所有依赖:npm install --include=dev && npx prisma generate && npm run build在Vercel项目的「Settings」→「Build & Development Settings」→「Build Command」中替换为上述命令。
检查Prisma与TypeScript的兼容问题
确认Prisma版本和Next.js 15、TypeScript版本兼容。可以尝试更新Prisma到最新稳定版:npm update prisma然后重新生成Prisma客户端:
npx prisma generate,再推送项目。
内容的提问来源于stack exchange,提问作者Leonardo Geja

