Error: Electron failed to install correctly, please delete node_modules/electron and try

前言

今天入坑了electron,参照官方栗子搭建electron桌面应用,无奈electron始终安装不成功。折腾了大半天总算是解决了electron无法正常安装的问题,在此分享我的解决方案,希望能帮助出现类似问题的小伙伴儿。

背景

  • node: v10.16.2
  • npm: v6.9.0

尝试过程

  1. 设置淘宝镜像
  2. 增加ELECTRON_MIRROR配置
  3. FQ
    如上过程均以失败告终

处理过程

问题1: 安装electron至node install.js处卡住不动

此处参考了 https://blog.csdn.net/zhujuyu/article/details/79230643

  1. 安装cnpm
	npm install cnpm -g  --registry=https://registry.npm.taobao.org
  1. 设置electron_mirror配置(1、2行为依赖配置,有时候拉不下来)
sass_binary_site=https://npm.taobao.org/mirrors/node-sass/
phantomjs_cdnurl=http://npm.taobao.org/mirrors/phantomjs
ELECTRON_MIRROR=http://npm.taobao.org/mirrors/electron/

问题2:设置了淘宝镜像但是无法正常安装任何包(包括cnpm)

  • 报错信息:
npm ERR! code ENOTFOUND
npm ERR! errno ENOTFOUND
npm ERR! network request to https://cdn.npm.taobao.org/media-typer/-/media-typer-0.3.0.tgz failed, reason: getaddrinfo ENOTFOUND cdn.npm.taobao.org cdn.npm.taobao.org:443
npm ERR! network This is a problem related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settings.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly.  See: 'npm help config'
...

猜想是网络问题导致无法正常访问cdn.npm.taobao.org,后经过尝试,切换手机热点后能正常安装npm包(据说公司网关总路由设置了代理,这个问题折腾了比较久,万万没想到是公司网络的问题.jpg)

问题3:正常安装electron,但是执行electron -v命令或启动项目报错(Error: Electron failed to install correctly, please delete node_modules/electron and try)

这个问题也折腾了挺久,尝试删除、安装试了无数遍还是不行,最后猜想是版本问题,后来尝试安装低版本的electron成功了

// 注意: 如下安装后获取到的版本是7.0.0
cnpm install -g electron
// 执行此命令安装6.1.1版本的electron
cnpm install -g [email protected]

效果图

直接拷贝官网示例到本地,执行npm start命令启动,效果如下:
Error: Electron failed to install correctly, please delete node_modules/electron and try_第1张图片

总结

  • 有的时候不知道问题原因,盲目跟随网络上的经验,在浪费时间的同时也无法从根本上解决问题。
  • 大致确定问题范围后,通过假想的方式不断尝试可能会有意想不到的结果

你可能感兴趣的:(Web前端)