Next.js 14.0.4更新后遭遇appDir配置错误及readlink读取失败问题求助
Next.js 14.0.4启动失败:readlink读取文件错误解决方案
问题背景
将Next.js更新至14.0.4版本后启动项目报错,已根据官方提示移除了next.config.mjs中experimental字段下的appDir配置(该配置在Next.js 13.4+已默认启用),但仍存在读取文件失败的错误。
初始错误日志
> sbm@0.0.1 dev > next dev ▲ Next.js 14.0.4 - Local: http://localhost:3000 - Environments: .env.local ⚠ Invalid next.config.mjs options detected: ⚠ Unrecognized key(s) in object: 'appDir' at "experimental" ⚠ See more info here: https://nextjs.org/docs/messages/invalid-next-config [Error: EINVAL: invalid argument, readlink 'C:\Users\felip\Documentos\developer\bio\.next\server\server-reference-manifest.json'] { errno: -4071, code: 'EINVAL', syscall: 'readlink', path: 'C:\\Users\\felip\\Documentos\\developer\\bio\\.next\\server\\server-reference-manifest.json' }
修复appDir配置后的错误日志
> sbm@0.0.1 dev > next dev ▲ Next.js 14.0.4 - Local: http://localhost:3000 - Environments: .env.local [Error: EINVAL: invalid argument, readlink 'C:\Users\felip\Documentos\developer\bio\.next\server\server-reference-manifest.json'] { errno: -4071, code: 'EINVAL', syscall: 'readlink', path: 'C:\\Users\\felip\\Documentos\\developer\\bio\\.next\\server\\server-reference-manifest.json' }
解决方案
- 清理Next.js缓存:直接删除项目根目录下的
.next文件夹,再执行next dev重启项目 - 检查文件权限:确保当前用户对项目目录(尤其是
.next文件夹)拥有读写权限,Windows用户可右键文件夹→属性→安全选项卡调整权限 - 重装依赖:删除
node_modules文件夹和package-lock.json(或yarn.lock)文件,执行npm install(或yarn install)后重新启动项目 - 排查路径问题:确认项目路径中无空格、特殊字符或非英文字符,避免Windows系统路径解析异常
- 升级Node.js:使用Next.js 14.0.4推荐的Node.js版本(18.x或20.x LTS),避免版本不兼容导致的文件操作错误
内容的提问来源于stack exchange,提问作者Felipe SBM
相关产品推荐
相关产品推荐

