You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

M2 Mac上Next.js官方开发指南无法运行的问题求助

问题诊断与解决方案

核心问题分析

你遇到的bench-nested-deps#dev和bench-nested-deps-app-router#dev启动失败,本质是Next.js仓库默认的pnpm dev命令会尝试运行所有工作区项目(包括基准测试用例),而这些基准测试项目的依赖或配置在M2 Mac的arm64架构下存在兼容性问题,且普通开发场景完全不需要运行这些测试项目。

另外next info命令找不到,是因为你没有通过工作区执行命令——Next.js仓库是monorepo结构,全局安装的next和仓库内部版本不匹配,且仓库内的next是工作区依赖,不能直接全局调用。

针对性解决方案

1. 仅运行核心Next.js开发服务

普通开发只需启动Next.js核心包的开发服务,无需执行所有工作区任务,执行以下命令替代pnpm dev:

pnpm dev --filter next

这个命令会只针对next包启动开发流程,跳过基准测试项目,避免无关的错误。

2. 解决架构兼容性问题(如果仍有报错)

M2 Mac的arm64架构可能导致部分依赖编译失败,可尝试以下操作:

  • 确保所有依赖都是arm64兼容版本:删除node_modules和pnpm-lock.yaml,重新执行pnpm install,并检查终端是否以arm64模式运行(可通过uname -m查看,输出arm64则为正确模式)。
  • 若部分依赖无arm64版本,可通过Rosetta 2以x86_64模式运行终端:右键终端图标→「显示简介」→勾选「使用Rosetta打开」,重新打开终端后再执行安装和启动命令。

3. 正确执行next info命令

在Next.js monorepo中,必须通过工作区命令执行next info:

pnpm next info

这样会调用仓库内部的next版本,而非全局安装的版本,避免命令找不到或版本不匹配的问题。

4. 确认依赖版本匹配

检查仓库根目录的package.json中turborepo和pnpm的指定版本,确保本地安装的pnpm版本符合要求(可通过pnpm --version查看),若版本不匹配,执行:

pnpm add -g pnpm@<仓库指定版本>

内容的提问来源于stack exchange,提问作者wirelessben

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 14:53:20