【Nextjs】macos 系统运行报错:Error: Cannot find module '../lightningcss.darwin-x64.node'

先说结论:我是用nvm管理的node版本,那么我在切换node的时候,下载新的直接执行的是 nvm install xx ;这样直接下载的是 x86 的 node

解决方案:

1、先运行这个脚本,看看哪个用的是 x86

bash 复制代码
nvm ls                                                                                                     
for d in ~/.nvm/versions/node/*/bin/node; do
  v=$(basename "$(dirname "$(dirname "$d")")")
  printf '%-12s -> ' "$v"; file "$d" | sed 's/.*: //'
done

2、卸载到对应的 x86 版本重新安装;只要保证arch 是 arm64,那么你运行nvm install xx他会自己下载 arm 版本的。

报错信息如下:

bash 复制代码
/opt/homebrew/bin/bun run dev
$ next dev
▲ Next.js 16.2.12 (Turbopack)
- Local:         http://localhost:3000
- Network:       http://172.16.30.112:3000
✓ Ready in 453ms
  Using cached swc package @next/swc-darwin-x64...

⨯ ./app/globals.css
Error evaluating Node.js code
Error: Cannot find module '../lightningcss.darwin-x64.node'
Require stack:
- /Users/wangxucheng/Desktop/learn/next/next-app/node_modules/lightningcss/node/index.js
- /Users/wangxucheng/Desktop/learn/next/next-app/node_modules/@tailwindcss/node/dist/index.js
- /Users/wangxucheng/Desktop/learn/next/next-app/node_modules/@tailwindcss/postcss/dist/index.js
- /Users/wangxucheng/Desktop/learn/next/next-app/.next/dev/build/chunks/[root-of-the-server]__0oj80bi._.js
- /Users/wangxucheng/Desktop/learn/next/next-app/.next/dev/build/chunks/[turbopack]_runtime.js
- /Users/wangxucheng/Desktop/learn/next/next-app/.next/dev/build/56416d4ae4ce586f.js
    [at Function._resolveFilename (node:internal/modules/cjs/loader:1383:15)]
    [at defaultResolveImpl (node:internal/modules/cjs/loader:1025:19)]
    [at resolveForCJSWithHooks (node:internal/modules/cjs/loader:1030:22)]
    [at Function._load (node:internal/modules/cjs/loader:1192:37)]
    [at TracingChannel.traceSync (node:diagnostics_channel:322:14)]
    [at wrapModuleLoad (node:internal/modules/cjs/loader:237:24)]
    [at Module.require (node:internal/modules/cjs/loader:1463:12)]
    [at require (node:internal/modules/helpers:147:16)]
    [at Object.<anonymous> (/Users/wangxucheng/Desktop/learn/next/next-app/node_modules/lightningcss/node/index.js:20:12)]
    [at Module._compile (node:internal/modules/cjs/loader:1706:14)]

Import trace:
  Client Component Browser:
    ./app/globals.css [Client Component Browser]
    ./app/layout.tsx [Server Component]

运行下面这个命令,看看你的 node 是不是基于x86 的;

bash 复制代码
arch                              # 应该是 arm64;若是 i386,说明终端跑在 Rosetta 下
node -e 'console.log(process.arch)'   # 应该是 arm64;若是 x64,就是它引起的报错!
相关推荐
bugcome_com42 分钟前
JWT 知识小课堂:从入门到精通,一文吃透 JSON Web Token
前端·json
To_OC1 小时前
写了三天 Next.js,我的 React 世界观被拆了又装回去
前端·全栈·next.js
独泪了无痕1 小时前
viewer.js 安装与配置指南:实现图片预览功能
前端·vue.js
ltl1 小时前
架构评估:ATAM 与 trade-off 分析实战
架构
mldong2 小时前
"applicant" 契约:退回发起人的闭环设计
java·架构
Fluxart.ai3 小时前
电商商品图审核怎么自动化?规则引擎、人工复核与发布门禁
java·前端·自动化
why技术4 小时前
AI 写的文章,可能都带着手敲一遍都去不掉的“隐形水印”。
前端·人工智能·后端
愚公搬代码4 小时前
【愚公系列】《Android应用案例开发大全》016-LBS类应用掌上杭州(辅助工具类的开发)
android·前端
CodeSheep4 小时前
又一个华为天才少年,离职了!
前端·后端·程序员
kyriewen4 小时前
面试官说"打开你的AI工具"——我才发现,他考的根本不是写代码
前端·人工智能·面试