M1芯片Mac下Next.js项目npm install安装Electron失败求助
解决M1 Mac上Electron v2.0.18安装失败的问题
问题根源
Electron v2.0.18发布于2019年,当时M1芯片尚未推出,官方未提供darwin-arm64架构的安装包,因此直接下载会返回404错误。
可行解决方案
1. 用Rosetta模拟x86架构执行安装
M1 Mac支持通过Rosetta模拟x86环境,强制下载x64架构的Electron包:
- 打开终端,执行以下命令启动x86架构的shell:
arch -x86_64 zsh # 若使用bash则替换为arch -x86_64 bash - 在这个新shell中执行:
npm install - 安装完成后,项目可通过Rosetta正常运行。
2. 升级Electron到支持arm64的版本
Electron从v11.0.0开始正式支持darwin-arm64架构,可修改项目依赖版本:
- 打开项目根目录的
package.json,找到electron依赖项,将版本从^2.0.18修改为支持arm64的版本(如^11.0.0或更高稳定版):"dependencies": { // ...其他依赖 "electron": "^11.0.0" } - 执行
npm install完成安装 - 注意:若项目依赖旧版Electron的特定API,需检查兼容性并调整代码。
3. 强制指定下载x64架构的Electron包
通过环境变量或npm参数强制下载x64版本:
- 临时指定架构执行安装:
npm install --arch=x64 - 或设置环境变量后执行安装:
export npm_config_arch=x64 npm install - 也可直接指定Electron下载文件:
ELECTRON_CUSTOM_DIR="v2.0.18" ELECTRON_CUSTOM_FILENAME="electron-v2.0.18-darwin-x64.zip" npm install
附用户提供的错误日志示例
npm ERR! code 404
npm ERR! 404 Not Found - GET https://github.com/electron/electron/releases/download/v2.0.18/electron-v2.0.18-darwin-arm64.zip
npm ERR! 404
npm ERR! 404 'electron-v2.0.18-darwin-arm64.zip' is not in this repository.
附用户提供的package.json片段示例
{ "name": "your-project-name", "version": "1.0.0", "dependencies": { "electron": "^2.0.18", // ...其他依赖项 } }
内容的提问来源于stack exchange,提问作者Laura Cimpoesu
相关产品推荐
相关产品推荐

