解决 Next.js build 完成后卡住的问题
💡
原文中文,约3200字,阅读约需8分钟。
📝
内容提要
在构建 Next.js 项目时,常出现卡住现象,问题与 Next.js 的 Telemetry 相关。可以通过执行 `npx next telemetry disable` 来禁用 Telemetry。由于网络问题,HTTP_PROXY 和 HTTPS_PROXY 对 Next.js 无效,建议使用 TUN 或 WireGuard 进行全局联网。
🎯
关键要点
- 在执行 Next.js 项目的 npm run build 后,常出现卡住现象,尤其是在完成 Finalizing page optimization 后。
- 可以通过执行 npx next telemetry disable 来禁用 Next.js 的 Telemetry,从而解决卡住问题。
- 使用 strace 和 ss 命令分析发现,Next.js 编译过程中可能遇到网络问题,导致卡住。
- HTTP_PROXY 和 HTTPS_PROXY 对 Next.js 无效,建议使用 TUN 或 WireGuard 进行全局联网。
- 在中国大陆,Vercel 的服务可能会受到阻断,导致构建过程中的问题。
❓
延伸问答
为什么在构建 Next.js 项目时会卡住?
构建过程中卡住通常与 Next.js 的 Telemetry 相关,尤其是在完成 Finalizing page optimization 后。
如何解决 Next.js 构建卡住的问题?
可以通过执行 `npx next telemetry disable` 来禁用 Next.js 的 Telemetry,从而解决卡住问题。
在中国大陆使用 Vercel 时会遇到什么问题?
在中国大陆,Vercel 的服务可能会受到阻断,导致构建过程中的问题。
使用 HTTP_PROXY 和 HTTPS_PROXY 对 Next.js 有效吗?
HTTP_PROXY 和 HTTPS_PROXY 对 Next.js 无效,建议使用 TUN 或 WireGuard 进行全局联网。
如何分析 Next.js 构建过程中的问题?
可以使用 strace 和 ss 命令分析 Next.js 编译过程中执行的系统调用,以找出卡住的原因。
Next.js 的 Telemetry 是什么?
Telemetry 是 Next.js 的一个功能,用于收集使用数据,可能导致构建过程中的卡住现象。
➡️