Mac M1运行Symfony6项目时webpack-cli报spawn错误-86求助
解决M1 Mac上Symfony6运行
npm run dev报spawn Unknown system error -86的问题 从报错栈可以看出,问题出在node-notifier依赖调用macOS NotificationCenter时的架构不兼容——M1芯片是ARM64架构,而旧版node-notifier包含的是x86架构的二进制文件,导致触发spawn Unknown system error -86。以下是几种可行的解决方法:
方法一:禁用WebpackNotifier插件
报错是由webpack-notifier插件触发的,直接在项目的webpack.config.js中禁用该插件即可:
- 打开项目根目录下的
webpack.config.js - 找到启用
WebpackNotifierPlugin的代码段,注释或删除相关配置:
// 注释或删除以下内容 // const WebpackNotifierPlugin = require('webpack-notifier'); // Encore // ... // .addPlugin(new WebpackNotifierPlugin({ // alwaysNotify: true // })) // ;
- 保存文件后重新执行
npm run dev
方法二:更新node-notifier到ARM兼容版本
新版node-notifier已经修复了M1架构的兼容问题,直接更新依赖:
# 使用npm更新 npm update node-notifier # 或使用yarn更新 yarn upgrade node-notifier
更新完成后重新运行npm run dev即可。
方法三:用Rosetta 2运行终端(临时方案)
如果前两种方法无效,可以通过Rosetta 2兼容x86架构的依赖:
- 打开「应用程序/实用工具」,右键点击「终端」,选择「显示简介」
- 勾选「使用Rosetta打开」,重启终端
- 在重启后的终端中重新执行
npm run dev
内容的提问来源于stack exchange,提问作者paul vinchent
相关产品推荐
相关产品推荐

