electron中报错object has been destroyed electron rebuild

admin2024-05-30  31

electron 打包可执行安装包主要步骤:

1.执行 install ,命令如下

npm install

install 的过程主要是下载依赖的过程,当依赖中存在 native 模块时,native 模块可以会直接 rebuild 一下。如果用户并没有安装 node-gyp 和 vs 2015 时,就会报异常。node-gyp 的安装我会在下方详细讲解。

2.执行 electron-rebuild ,命令如下

electron-rebuild -f -w sqlite3

如果项目中有native模块,则必须执行这一步,这是将 native 重新编译成当前 electron 版本的 addon 模块。前提是已经全局安装了 electron-rebuild 模块,当然本地安装也可以。因为此模块不是项目依赖,所以建议全局安装,这样项目依赖和打包依赖不会耦合在一起。

3.执行 electron-builder ,命令如下

build --win --ia32

经过以上命令,项目会被打包成一个可执行的安装文件。国内的开发者可能会遇到各种超时的时候,后面讲怎么解决。

常见问题

1.CL.exe”已退出,代码为 -1073741515

这个错误是 VS 2015 报的,1073741515 这代码的主要意思是 dll 缺失。如果有这个错误基本上说明是 VS 2015 没有安装正确。对于没有 C 开发经验的开发者来说,很可能是因为 VS 2015 没有安装完全造成的。按照 node-gyp 的要求,开发者只需要安装 vs2015 或者安装 windows-build-tools ,默认安装即可。但是实际情况并不是这样的,这些安装程序在安装时并没有默认安装 vc++ 相关组件。这样就导致编译的时候报 dll 缺失的错误。我的解决办法是自己下载 vs 2015 ,然后安装的时候选择自定义安装,最后后勾选 “编程语言-VC++” 那一项,如下图:

electron中报错object has been destroyed electron rebuild,electron中报错object has been destroyed electron rebuild_开发者,第1张

这个问题基本就解决了。

2.网络超时

国内的开发者在打包程序的时候经常遇到链接超时的问题,这是因为在打包的时候,electron-builder 需要下载相应的资源文件,如果下载 ip 被墙则无法下载报链接超时的异常。这种情况只能挂 VPN 进行下载。但是在系统默认设置中,VPN 只代码 http、ftp 协议的链接。electron-builder 下载用的是 scoket ,所以需要手动设置 VPN 选项。拿我 win7 来说 ,具体设置如下:“网络-Internet选项-连接-局域网设置-高级-套接字”,设置相应ip和端口后重启 cmd 然后执行打包命令,如下图:

electron中报错object has been destroyed electron rebuild,electron中报错object has been destroyed electron rebuild_可执行_02,第2张

超时问题可以解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明原文出处。如若内容造成侵权/违法违规/事实不符,请联系SD编程学习网:675289112@qq.com进行投诉反馈,一经查实,立即删除!