注意:新版的electron已经不支持在win上直接打包Linux的环境了,服务会卡住,会一直生成文件占用磁盘(我发现的时候占了我100G,而且文件夹很深,找了java代码while循环,好不容易删除的o(╥﹏╥)o)
electron有一个专门打包的docker镜像,可以安装docker打包
docker有win版,也可以安装打包
下载docker镜像
docker pull electronuserland/builder
最新很多docker镜像都挂了若是下载失败,需要设置镜像地址,重启docker
别人的教程docker更新镜像
设置的时候只需要把镜像加上就行registry-mirrors
{"registry-mirrors": ["https://docker.registry.cyou", "https://docker-cf.registry.cyou", "https://dockercf.jsdelivr.fyi", "https://docker.jsdelivr.fyi", "https://dockertest.jsdelivr.fyi", "https://mirror.aliyuncs.com", "https://dockerproxy.com", "https://mirror.baidubce.com", "https://docker.m.daocloud.io", "https://docker.nju.edu.cn", "https://docker.mirrors.sjtug.sjtu.edu.cn", "https://docker.mirrors.ustc.edu.cn", "https://mirror.iscas.ac.cn", "https://docker.rainbond.cc"]
}
重启docker之后,使用docker info 能在最后看到加上的镜像
之后就可以重新拉取了
docker pull electronuserland/builder
打包
- 运行命令
docker run --rm -ti -v 本地路径:/project -w /project electronuserland/builder
比如 win可以是 C:\Electron\Pro
linux可以是 /usr/local/Electron/Pro
- 自动就进入容器了
- 编译
# 删除之前的依赖
rm -rf ./node_modules
# 安装依赖
npm i
# 打包
npm run build
若是之前将electron-builder等部分依赖全局安装的,在package.json中没有这个依赖,打包会失败,需要在package.json中将对应的依赖加上
下载依赖慢,设置镜像
没有vi和vim,只能这样了
echo electron_mirror=https://registry.npmmirror.com/-/binary/electron/ > .npmrc
编译失败
原因很多,这个是官方文档 https://www.electron.build/linux