我使用electron-packager来打包文件,electron-packager打包的特点是,要写一大串命令,或者在根目录下的package.json文件中配置相应的字段如下:
"scripts": {
"start": "electron .",
"packagerWin64": "electron-packager ./ '项目' --platform=win32 --arch=x64 --out ./project --app-version 1.0.0 --overwrite --icon=./static/assets/img/favicon.ico --asar",
"packagerWin32": "electron-packager ./ '项目' --platform=win32 --arch=ia32 --out ./project --app-version 1.0.0 --overwrite --icon=./static/assets/img/favicon.ico --asar",
"packagerMAC": "electron-packager ./ '项目' --platform=darwin --arch=x64 --out ./project --app-version 1.0.0 --overwrite --extra-resource=./res/2.dat --extra-resource=./res/1.dat --icon=./static/assets/img/favicon.icns"
}
简单介绍一下用到的打包字段,详细信息看官方文档:
https://github.com/electron-u...
官方文档中提到的基本格式为:
electron-packager <sourcedir> <appname> --platform=<platform> --arch=<arch> [optional flags...]
-
--platform 和 --arch 表示可运行的系统
- 这里面有个要注意的坑:本机只能打包对应系统运行的electron软件,我自己使用mac开发,所以我是在windows虚拟机里面进行的 “packagerWin64” 打包
- “start” 表示本地打包到./dist文件夹,运行一个本地项目,用于测试
- “packagerWin64” 用来生成一个在win64位系统运行的electron软件
- “packagerWin32” 用来生成一个在win32位系统运行的electron软件
- “packagerMAC” 用来生成一个在MAC系统运行的electron软件
- 第一个 ‘./’ 表示打包文件的根目录 即 <sourcedir>
- ‘项目’ 表示打包后的文件名称 即<appname>
- --out ./project 表示生成的打包后的文件,在本地根目录的piccRobot文件夹里
- --overwrite 表示,如果本地有之前的打包文件,会删除原有文件,重新生成新的打包文件
- --app-version 1.0.0 表示生成的打包文件的版本
-
--icon=./static/assets/img/favicon.icns" 表示打包文件的图标
- 这里要注意的是,icns是mac版的图标格式,如果是win版,格式就是icon
- --extra-resource=./res/1.dat 表示加载的第三方文件,有关加载第三方文件的细节比较多,我在系列三回答
-
--asar 简单来说,就是会把文件打包到一个加密文件包里,这样就不容易被解析到源码。具体分析见electron官网 :
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。