Next.js 14.0.1部署Vercel/Netlify时build报错:无法获取encodeXML导出名称
解决方案:Next.js构建报错「Cannot get final name for export 'encodeXML'」
这个错误的核心原因是entities包的版本与Next.js 14的webpack编译逻辑不兼容,你的依赖树中大概率存在旧版entities(通常由@react-email相关依赖引入)。以下是两种可行的修复方案:
方案一:锁定entities兼容版本
- 在
package.json中添加overrides字段(npm 8+版本支持),强制指定兼容的entities版本:
{ "name": "kaustubhdev", "version": "0.1.0", "private": true, "overrides": { "entities": "^4.5.0" }, // ... 原有scripts、dependencies等配置 }
- 清理现有依赖并重新安装:
rm -rf node_modules package-lock.json npm install
- 本地执行
npm run build验证错误是否修复,确认正常后重新部署到Vercel/Netlify。
方案二:升级@react-email依赖
旧版本的@react-email组件可能依赖了存在问题的entities版本,升级到最新版可解决依赖冲突:
npm install @react-email/components@latest @react-email/tailwind@latest
执行完升级后,同样清理依赖缓存并重装,再测试构建:
rm -rf node_modules package-lock.json npm install npm run build
内容的提问来源于stack exchange,提问作者Kaustubh Shinde
相关产品推荐
相关产品推荐

