electron下载失败_解决方案汇总
文章目录
electron下载失败_解决方案汇总
嗯,怎么说!npm
下载electron
的时候经常会碰到下载失败的问题,我也很头疼,网上的方法也试过很多,这里就汇总一下。
-
如果再有下载失败的问题出现,那么,就按照方法一个个测试吧。
-
说实话,有个测试的目标在,总比看着下载错误干瞪眼强很多。
OK ,我们进入正题:
node install.js
出错
这个错误比较笼统,严格来说npm
下载electron
出错肯定不是node
执行install.js
本身的问题,所以这里先提出几个常见的解决方案,下面在说一些比较具体的错误。
-
删除项目
node_modules
,首先执行:# 太高的版本 如 14.0.0 可能还是会出错 npm install electron@13.1.7 --save-dev --save-exact --unsafe-perm=true --allow-root
electron
的版本自己根据项目使用情况来指定先把
electron
下载下来,然后执行npm i
,这样npm
下载时就会跳过electron
的下载,毕竟包已经下载过了【如果electron下载成功的话】。 -
切换
npm
镜像源众所周知,一般不翻墙的话,我们下载东西很大概率会出错,翻了墙可能也会,所以走一下国内的
taobao
的镜像源也是不错的。# npm 查看镜像源: npm config get registry # npm 设置淘宝镜像源: npm config set registry https://registry.npm.taobao.org 【持久设置】 # npm 设置淘宝镜像源: npm --registry https://registry.npm.taobao.org install XXX(模块名)【临时设置】 # npm 还原默认镜像源: npm config set registry https://registry.npmjs.org/
接下来就还是,删除
node_modules
,然后执行npm i
-
利用
cnpm
这个方案有点鸡肋,因为
npm
切换了镜像源,和cnpm
基本效果一样,如果上面那个不行,这个大概率也会死,但是聊胜于无,可以尝试。# 下载cnpm npm i cnpm -g
RequestError: connect ETIMEDOUT 20.205.243.166:443
这个问题一般就是请求超时了,验证的话可以在cmd
里执行ping github.com
试试。大概率就会告诉你请求超时(有时候网站是可以正常打开的)。
解决这个问题,就是想办法把这个网络给搞通。
方法就是修改本地的host
文件:
- host文件路径:
C:\Windows\System32\drivers\etc
【建议使用管理员权限打开文件,不然没有权限修改。】
-
添加一个可以正常
ping
通的host
52.78.231.108 github.com
如果发现这个
host
也无法ping
通github
,那可以去这个网址: Chinaz,自己找一个host
地址。 -
修改自己的镜像源:
此时使用自己的默认镜像源即可:
npm config set registry http://registry.npmjs.org/
当然,也可以使用淘宝的,可以都试试😂
接下来的操作就正常了,删除node_modules
,执行npm i
此方法来源:记一次npm install 报RequestError: connect ETIMEDOUT 20.205.243.166:443和RequestError: socket hang up
RequestError: read ECONNRESET
这个错误其实还是网络连接出错,electron包下不下来,按照我看的博客的博主的说法,换成淘宝镜像地址就行。
但是人家玩的比较6,效果还挺好。
流程:
-
执行
npm i
,当执行到node install.js
时,ctrl+c
中断执行。 -
进入到 electron 文件夹里:
# 进入到electron文件夹 cd node_modules/electron # 在资源管理器中打开 explorer .
-
使用编辑器打开
electron
文件夹中的install.js
// 修改以下代码: // downloads if not cached downloadArtifact({ version, artifactName: 'electron', force: process.env.force_no_cache === 'true', cacheRoot: process.env.electron_config_cache, platform: process.env.npm_config_platform || process.platform, arch: process.env.npm_config_arch || process.arch, // 注 :下面的 mirrorOptions 是我加的,也是要修改的地方 mirrorOptions:{ mirror: 'https://npm.taobao.org/mirrors/electron/' } // ---------------------------------------------- }).then(extractFile).catch(err => { console.error(err.stack) process.exit(1) })
我这里和我看的博客的博主的文件内容不太一样,但是配置一致。
-
然后在electron目录下执行命令:
node install.js
,就可以安装了。 -
建议在执行完
node install.js
之后,可以回到项目根目录下,再次执行一遍npm i
此方法来源:electron安装, node install.js报错RequestError: read ECONNRESET问题解决方案
以上就是我的一些方法汇总了,大家自己尝试。
更多推荐
所有评论(0)