Next.js项目构建时Next-auth报错:Type error: '>' expected
Next.js构建时next-auth类型错误问题排查
问题现象
本地开发环境(npm install、npm run dev)一切正常,认证功能可正常使用,但执行构建命令时抛出TypeScript类型错误:
./node_modules/next-auth/next/index.d.ts:18:61 Type error: '>' expected. 16 | export declare function unstable_getServerSession<O extends GetServerSessionOptions, R = O["callbacks"] extends { 17 | session: (...args: any[]) => infer U; > 18 | } ? U : Session>(...args: Parameters<typeof getServerSession<O, R>>): ReturnType<typeof getServerSession<O, R>>; | ^ 19 | declare global { 20 | namespace NodeJS { 21 | interface ProcessEnv
当前依赖配置
package.json中的核心依赖版本:
"dependencies": { "@prisma/client": "^4.6.1", "next": "13.0.2", "next-auth": "^4.3.3", "next-transpile-modules": "^10.0.0", "react": "^18.2.0", "react-dom": "^18.2.0", "ts-node": "^10.9.1" },
已尝试的方案
- 更换多个版本的Next.js和next-auth,问题未得到解决
- 发现有同类型的近期bug反馈
结论与解决建议
这个错误属于next-auth类型定义文件的语法兼容性问题:代码中使用的嵌套泛型写法(Parameters<typeof getServerSession<O, R>>)可能与当前项目的TypeScript版本不兼容,或者是next-auth的类型定义存在bug。
推荐以下解决步骤:
- 升级TypeScript版本:将项目的TypeScript升级到最新稳定版,确保支持该嵌套泛型语法
- 跳过第三方库类型检查:在
tsconfig.json中设置"skipLibCheck": true,临时绕过next-auth的类型校验,先保证构建成功 - 等待官方修复:关注next-auth官方仓库的issue,等待官方发布修复版本
内容的提问来源于stack exchange,提问作者user17488149
相关产品推荐
相关产品推荐

