求助! electron 自动化构建的相关问题!

2021-03-07 01:02:57 +08:00
 zuihoudezhanyi

最近公司在搞客户端 CI,是要交付 electron Mac 客户端。有两个问题搞不太懂。

1 、npm install 卡住的问题。

网络好的时候会安装成功,大部分时候都会卡住。已经配置了私服,挂了淘宝的源。是 sqlite3 这个包安装有问题吗。或者怎么查看 electron-builder install-app-deps 更具体的日志呢?

2 、构建.app 之后怎样打包成 pkg 格式的包呢,现在使用苹果自带的工具,但是没有命令行,Jenkins 中没法搞,也试过 quickpkg 这个工具,但是写入一些包的信息较少,无法满足要求。不知道还有什么好的方法打包。

2442 次点击
所在节点    Node.js
5 条回复
EPr2hh6LADQWqRVH
2021-03-07 01:08:36 +08:00
问题一,我的做法是开发人员提前编译好本地组件,打包时不做编译。

问题二,好好看一下 electron-builder 的文档
12101111
2021-03-07 10:36:11 +08:00
因为 electron 安装是不走 npm/yarn 源的,是直接从 github release 下载的.不过看起来你是卡在了 native 依赖上
除了本体还要安装一个头文件,这个可以手动安装,下载
https://atom.io/download/electron/v${ELECTRON_VERSION}/node-v${ELECTRON_VERSION}-headers.tar.gz
然后运行
node-gyp install --target="${ELECTRON_VERSION}" --tarball="<path to node-v${ELECTRON_VERSION}-headers.tar.gz>"
Rheinmetal
2021-03-07 11:21:47 +08:00
可以考虑一下用 Docker 镜像做 CI 环境
依赖不更改就不再次执行 electron-builder install-app-deps
直接从 registry pull image 下来
duan602728596
2021-03-07 12:07:46 +08:00
编译的配置挺多的,建议使用 js 脚本替代命令行进行构建。
1 、卡住是因为有些文件需要从 github 上下载。electron 可以配置淘宝镜像,但是其他的文件还是需要从 github 上下载。最近开会,不仅下载会有影响,甚至我这边翻墙了,却连代码都拉不下来。
2 、pkg 打包建议查看文档 https://www.electron.build/configuration/mac#MacConfiguration-target
axeprpr1
2021-03-07 22:49:22 +08:00
因为 electorn node 版本的问题,sqlite3 这类 c/c++编写的库需要 electron-rebuild 非常操蛋。我们现在是尽量避免使用这种库,数据库我用的 lowdb 代替 sqlite3,如果非要用,你可以试试 sql.js ,这个是 sqlite3 的 wasm 版本。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/759185

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX