Next.js构建报错:找不到metadata-interface.js模块及类型声明
Next.js构建时无法找到metadata-interface.js模块的类型错误解决方法
执行pnpm run build构建Next.js项目(配置了output: "export")时,出现如下类型错误:
../out/types/app/page.ts:3:40
Type error: Cannot find module 'next/dist/lib/metadata/types/metadata-interface.js' or its corresponding type declarations.
错误来自构建自动生成的out/types目录文件,以下是可行的解决步骤:
清理构建产物与缓存
删除生成的out目录和Next.js缓存目录,再重新构建:# macOS/Linux rm -rf out .next # Windows rmdir /s /q out .next pnpm run build统一Next.js依赖版本
检查项目中是否存在多个Next.js版本冲突:pnpm list next若有版本不一致的情况,重新安装指定稳定版本:
pnpm add next@13.4.19 # 替换为你使用的稳定版本号修正类型导入路径
若代码中手动导入了ResolvingMetadata,避免引用Next.js内部未公开路径,改用官方暴露的公共类型:// 错误导入 // import type { ResolvingMetadata } from 'next/dist/lib/metadata/types/metadata-interface.js' // 正确导入 import type { ResolvingMetadata } from 'next'官方公共类型已包含该接口,内部路径属于未公开API,版本迭代中可能随时变更。
重置依赖安装
删除依赖锁定文件和node_modules,重新安装依赖后构建:rm -rf node_modules pnpm-lock.yaml pnpm install pnpm run build
内容的提问来源于stack exchange,提问作者Carrear
相关产品推荐
相关产品推荐

