electron桌面应用打包
JeecgBoot v3.8+ 支持electron桌面应用打包,采用Vite+Vue3+Electron构建客户端桌面应用。
- 支持windows、linux、macOS三大平台。
- 支持将前端打成exe、dmg、deb等安装包,支持在线升级。
- 开源版默认不提供此功能,会导致安装依赖很慢。
效果参考
打包步骤
- 安装依赖,运行
pnpm install
- 运行
npm run electron:dev
,测试是否能正常运行,如果报错,参考下面写的常见问题的解决方案 - 修改配置文件
.env
: (可选)将VITE_GLOB_APP_TITLE
和VITE_GLOB_APP_SHORT_NAME
修改为你的项目名称.env.prod_electron
: (可选)将VITE_GLOB_API_URL
和VITE_GLOB_DOMAIN_URL
修改为你的线上后台地址electron-builder.yaml
: (可选)将productName
修改为你的产品名称
- 运行
npm run electron:build-all
进行打包,这个命令首先会编译项目,然后再打包成安装包
其他命令参考如下:
- 打包成功后,会在项目根目录下生成
dist-electron
目录
windows下可进入win-unpacked
目录直接运行打包后的应用,或运行xxx Setup x.x.x.exe
进行安装
常见问题
一、安装依赖卡着不动
不用担心并不是出问题,而是electron安装就是很慢,大概10分钟左右

二、依赖已安装但仍无法运行
依赖已经提示安装完成了,但是仍然打包不了(或 dev 运行不了)
- 报错示例:
please delete node_modules/electron and try installing again
- 报错原因:
由于网络原因导致的 Electron 依赖包下载失败
- 解决方案:
在项目根目录控制台执行:
node node_modules/electron/install.js
如果失败可以多次执行
https://github.com/electron/electron/issues/20731#issuecomment-546616376
- 报错原因:
三、打包时报错
- 报错示例:
Cannot create symbolic link
- 报错原因:
权限不足,创建符号链接失败
- 解决方案:
可以先打开有管理员权限的命令行,cd 到项目目录,再执行
npm run electron:build-all
命令进行打包
- 报错原因:
- 报错示例:
⨯ remove xxx\win-unpacked\d3dcompiler_47.dll: Access is denied.
- 报错原因:
由于运行了
win-unpacked
中的免安装应用,导致文件占用 - 解决方案:
只需关闭全部打开的应用并重新打包即可
- 报错原因:
四、打包报错缺少@types\mousetrap
⨯ ENOENT: no such file or directory, stat 'E:\workspace-ui\jeecgboot-vue3-idea2025\node_modules\@types\mousetrap' failedTask=build stackTrace=Error: ENOENT: no such file or directory, stat 'E:\workspace-ui\jeecgboot-vue3-idea2025\node_modules\@types\mousetrap'
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
进程已结束,退出代码为 1
解决方法:删除node_modules,依赖重新安装
五、注释electron功能
此功能会导致依赖安装很慢,影响开发效率,如果平时不需要使用此功能,可以暂时注释掉,步骤如下:
1.注释整个文件
build/vite/plugin/electron.ts
2.注释electron插件加载逻辑
修改文件build/vite/plugin/index.ts
,搜索electron plugin config
注释相关逻辑代码
3.修改package.json删除相关依赖