Electron使用electron-builder工具打包流程
一、安装electron-builder
npm install electron-builder --save-dev
二、在项目的package.json文件中配置 electron-builder相关参数
具体参数可以参考官方文档:https://www.electron.build/configuration/configuration
"build": {
"appId": "com.xxx.xxx",
"productName":"中文名称可以在这里设置",
"win": {
"icon": "./icon/icon.ico"
},
//下载慢了可以设置淘宝的源
"electronDownload":{
"mirror":"https://npm.taobao.org/mirrors/electron/"
}
}
三、执行打包命令
npm run build
等会就会在dist目录生成安装包和可执行文件包。
全部参考 package.json
{
"name": "demo",
"version": "0.0.1",
"scripts": {
"start": "electron .",
"dist": "electron-builder --win"
},
"devDependencies": { //开发模式下的依赖
"dotenv": "^10.0.0",
"electron": "^13.1.9",
"electron-builder": "^22.11.7",
"node-cmd": "^5.0.0"
},
"dependencies": { //打包所需的依赖
"dotenv": "^10.0.0",
"node-cmd": "^5.0.0"
},
"build": { // electron-builder配置
"productName": "xxxx", //项目名 这也是生成的exe文件的前缀名
"appId": "xxxxx", //包名
"copyright": "xxxx", //版权 信息
"compression": "store", // "store" | "normal"| "maximum" 打包压缩情况(store 相对较快),store 39749kb, maximum 39186kb
"directories": {
"output": "build" // 输出文件夹
},
"asar": false, // 是否使用asar打包
"extraResources": { // 拷贝静态文件到指定位置 如果有不想打包的文件
"from": "./extraResources/",
"to": "extraResources"
},
"win": {
"icon": "build/icons/icon.ico", //图标路径
"requestedExecutionLevel": "highestAvailable", //打开exe时请求权限 asinvoker 默认权限 highestAvailable 获取最高可能获取的权限 requireAdministrator 获取管理员权限
"target": [
{
"target": "nsis", //使用nsis打包
"arch": [
"ia32" //可选打包为 32位或64位 ia32 x64
]
}
]
},
"nsis": {
"oneClick": false, // 一键安装
"guid": "xxxx", //注册表名字,不推荐修改
"perMachine": true, // 是否开启安装时权限限制(此电脑或当前用户)
"allowElevation": true, // 允许请求提升。 如果为false,则用户必须使用提升的权限重新启动安装程序。
"allowToChangeInstallationDirectory": true, // 允许修改安装目录
"installerIcon": "./build/icons/aaa.ico", // 安装图标
"uninstallerIcon": "./build/icons/bbb.ico", //卸载图标
"installerHeaderIcon": "./build/icons/aaa.ico", // 安装时头部图标
"createDesktopShortcut": true, // 创建桌面图标
"createStartMenuShortcut": true, // 创建开始菜单图标
"shortcutName": "xxxx" // 图标名称
}
}
}