Electron 项目使用官方组件 electron-builder 进行跨架构打包

Electron 项目使用官方组件 electron-builder 进行跨架构打包

一、官方组件electron-builder介绍

Electron官方提供的electron-builder组件核心功能包括:

  • 跨平台的安装包生成
  • 支持多种安装包格式(如dmg、exe、deb、rpm等)

核心资源

二、接入核心步骤

可用来参考的 electron-demo项目地址

1. 安装官方更新组件

2. 修改 package.json 文件,增加打包配置项

复制代码
    "build": {
        "appId": "com.example.electron-updater-demo",
        "productName": "electron-demo",
        "publish": {
          "provider": "generic",
          "url": "./dist/"
        },
        "mac": {
          "category": "public.app-category.developer-tools",
          "artifactName": "${productName}-${version}-mac-${arch}.${ext}"
        },
        "linux": {
          "target": [
            "AppImage"
          ],
          "category": "Utility",
          "artifactName": "${productName}-${version}-linux-${arch}.${ext}"
        },
        "win": {
          "target": [
            "nsis"
          ],
          "icon": "build/icon.ico",
          "artifactName": "${productName}-${version}-win-${arch}.${ext}"
        }
    },

3. 增加打包命令,增加打包配置项, 配置上不同端的打包命令

复制代码
    "scripts": {
        "build:mac-arm64": "yarn electron-builder --mac --arm64 --publish always --config.publish.channel=latest-arm64",
        "build:mac-x64": "yarn electron-builder --mac --x64 --publish always --config.publish.channel=latest-x64",
        "build:win-x64": "yarn electron-builder --win --x64 --publish always --config.publish.channel=latest-win-x64",
        "build:linux-arm64": "yarn electron-builder --linux --arm64 --publish always --config.publish.channel=latest-linux-arm64",
        "build:linux-x64": "yarn electron-builder --linux --x64 --publish always --config.publish.channel=latest-linux-x64",
    },

4. 执行对应打包命令,即可生成对应安装包

  • 执行 build:mac-arm64 即可生成 mac arm64 安装包
  • 执行 build:mac-x64 即可生成 mac x64 安装包
  • 执行 build:win-x64 即可生成 win x64 安装包
  • 执行 build:linux-arm64 即可生成 linux arm64 安装包
  • 执行 build:linux-x64 即可生成 linux x64 安装包

以上是接入指南。如果需要调整内容详略或补充特定场景说明,欢迎告知具体需求。

相关推荐
原则猫15 小时前
函数/变量提升
前端
独泪了无痕16 小时前
Vue3 Hooks使用实战解析
前端·vue.js
shawxlee17 小时前
vue3在public下封装config.js自定义配置动态数据,可在打包后直接修改,方便后端部署及后续维护
前端·javascript·经验分享·vue·团队开发·js·项目优化
用户0595401744618 小时前
把记忆存储的回归测试从手工换成 Playwright + GitHub Actions,线上缺陷降低 80%
前端·css
触底反弹18 小时前
🚀 从 DOM0 级到 React 合成事件:前端事件监听的 20 年演进史
前端·react.js·面试
kyriewen18 小时前
我给前端项目的接口请求套了6层保护——才发现以前一直在裸奔
前端·javascript·面试
颜酱18 小时前
04 | 召回前置准备:搭好召回所需的四个数据库
前端·人工智能·后端
郝亚军20 小时前
如何安装webstorm、Node.js和vue CLI
前端·javascript·vue.js
IT_陈寒20 小时前
React的useEffect依赖项把我坑惨了
前端·人工智能·后端
东方小月20 小时前
从零开发一个Coding Agent:monorepo项目搭建
前端·后端·node.js