Electron Vite Monorepo打包发布:electron-builder配置完全手册

📅 2026/7/21 17:48:51
Electron Vite Monorepo打包发布:electron-builder配置完全手册
Electron Vite Monorepo打包发布electron-builder配置完全手册【免费下载链接】vite-vue3-adminElectron Turborepo monorepo with pnpm, Vue, Vite boilerplate项目地址: https://gitcode.com/gh_mirrors/vi/vite-vue3-adminElectron Vite Monorepo是一个基于pnpm、Vue和Vite的现代化Electron应用开发框架通过Turborepo实现高效的多包管理。本指南将详细介绍如何使用electron-builder配置并打包发布你的Electron应用从基础设置到高级优化帮助你快速掌握完整的打包流程。 核心依赖与项目结构在开始配置前确保项目中已安装electron-builder。查看apps/electron/package.json文件确认开发依赖中包含electron-builder: 26.8.1项目采用Monorepo结构Electron主进程代码位于apps/electron/目录打包配置主要集中在该目录下的scripts/build.mts文件中。Vite作为构建工具为Electron应用提供快速的开发体验和优化的生产构建⚙️ 基础配置详解入口文件与输出目录在build.mts中首先定义了应用的基础信息和目录结构const options: Configuration { appId: isDev ? com.electron.app : com.electron-dev.app, productName: appName, directories: { output: ../../out, // 打包输出路径 buildResources: buildResources // 构建资源目录 }, files: [ // 需要打包的文件 dist, resources ] }跨平台目标配置electron-builder支持多平台打包配置位于options对象的平台特定属性中Windows平台win: { icon: icon.ico, target: [ { target: nsis, // 使用NSIS生成安装程序 arch: [ia32, x64] // 支持32位和64位系统 } ] }macOS平台mac: { target: [ { target: default, arch: [x64, arm64] // 支持Intel和Apple Silicon芯片 } ], icon: icon.icns, hardenedRuntime: true, // 启用 hardened runtime entitlements: buildResources/entitlements.mac.plist }Linux平台linux: { target: [AppImage, rpm, deb] // 生成多种Linux包格式 } 打包命令与工作流项目的打包命令定义在apps/electron/package.json的scripts中scripts: { build:dev: vite build --mode development pnpm bundle, build:prod: vite build pnpm bundle, pack:dev: pnpm build:dev dotenvx run -f .env.development -- pnpm pack:app, pack:prod: pnpm build:prod dotenvx run -f .env.production -- pnpm pack:app }开发环境打包pnpm --filter electron-main pack:dev生产环境打包pnpm --filter electron-main pack:prod打包过程会先通过Vite构建应用代码然后调用electron-builder进行打包最终输出到out/目录。 应用更新配置项目集成了自动更新功能配置位于options.publishpublish: [ { provider: github, // 使用GitHub发布更新 releaseType: draft, // 创建草稿发布 } ]要启用自动更新需要在主进程中集成electron-updater相关代码位于apps/electron/src/modules/updater/目录。 高级配置技巧自定义安装程序行为通过NSIS配置自定义Windows安装体验nsis: { oneClick: false, // 禁用一键安装 perMachine: true, // 按机器安装需要管理员权限 allowToChangeInstallationDirectory: true, // 允许用户选择安装目录 createDesktopShortcut: true, // 创建桌面快捷方式 shortcutName: shortcutName // 快捷方式名称 }资源文件处理在打包前脚本会自动复制Web应用和Preload脚本到构建目录cpSync(path.join(workDir, ../web/dist), path.join(workDir, ./dist/web), copySyncOptions) cpSync(path.join(workDir, ../preload/dist), path.join(workDir, ./dist/preload), copySyncOptions)代码签名与公证macOS应用需要签名和公证才能在App Store上架或正常运行mac: { hardenedRuntime: true, entitlements: buildResources/entitlements.mac.plist, notarize: false // 设置为true启用自动公证 }完整的签名配置可参考buildResources/entitlements.mac.plist文件。 总结与资源通过本文介绍的配置你可以实现Electron应用的跨平台打包、自动更新和签名发布。完整的配置代码位于打包脚本apps/electron/scripts/build.mts构建资源apps/electron/buildResources/依赖配置apps/electron/package.json要开始使用这个框架只需克隆仓库并安装依赖git clone https://gitcode.com/gh_mirrors/vi/vite-vue3-admin cd vite-vue3-admin pnpm install掌握这些配置技巧后你可以根据项目需求定制更复杂的打包流程为用户提供专业的应用分发体验。【免费下载链接】vite-vue3-adminElectron Turborepo monorepo with pnpm, Vue, Vite boilerplate项目地址: https://gitcode.com/gh_mirrors/vi/vite-vue3-admin创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考