这个问题找了N篇文章没啥用,最后还是感谢这篇文章作者,为了防止找不着,所以记录下来。
开发 Electron 项目,总是会发生安装失败或者安装时间太长的问题,下面说下终结解决办法。错误提示一般是如下图这样的:
这是我的错误截图
Error: Electron failed to install correctly, please delete node_modules/electron and try installing again
于是 try and try,不断的删除,不断的 install,终究还是搞不定,服了气了。
1、删除 node_modules/electron(这一次是真的要删一下,否则下面的方法会报错)
2、设置系统环境变量(设置 electron 使用淘宝源,很快)
// windows 请在环境变量里面设置,mac 请在环境变量文件中设置 ELECTRON_MIRROR=http://npm.taobao.org/mirrors/electron/ // 特别说明:一定要注意最后的一个 /,不加可能会提示 zip 包找不到
3、安装
npm install electron
PS:建议将 npm 或者 yarn 的源都设置为淘宝源,快的很。
兴哥:npm切换淘宝源,yarn切换淘宝源2 赞同 · 0 评论文章
======================= 2020/03/02 补充终极解决
这几天一直忙着写代码了,今天给 package.json 加了个包,矫情的 electron 又搞坏了。
what the f ???
盲写了一下午的代码,回来研究下如何把这个老大难给解决了。
解决办法如下:
文件:项目/node_modules/@electron/get/dist/cjs/artifact-utils.js
操作:注释掉第 39 行,增加第 40 行(就是39行后面的那个代码)
然后切到 /node_modules/electron 下手动执行:
node install.js
此时应该是已经搞定了,再搞不定的话留言,记得一定设置淘宝源,淘宝源。
======================= 说下原因吧
由于 electron 在 install 之后,是会执行 node install.js 去下载一个平台、版本对应的包,失败的原因就下载这个包,报错了,然后 npm 或者 yarn 在 install 的时候没有任何报错,运行的时候就告诉你上面的错误信息,安装失败了,删了再来永远是不会成功的。
手动执行 node install.js 的时候会提示你,有个包下载失败,404。于是,我就沿着 install.js 一路加 console.log 跟踪找到上面这个修改的地方。
原因在于,electron 在 node install.js 里面默认生成的下载的文件路径是这个:
https://npm.taobao.org/mirrors/electron/v8.0.2/electron-v8.0.2-win32-x64.zip
而淘宝源里面的这个资源的路径是这个:
https://npm.taobao.org/mirrors/electron/8.0.2/electron-v8.0.2-win32-x64.zip
考验眼力的时候了,看到了吧,默认路径在中间版本号里面多个 v。
Good Luck !!!