news 2026/6/23 11:57:50

jeecgboot:electron桌面应用打包

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
jeecgboot:electron桌面应用打包

新版jeecgboot框架已经可以支持electron桌面应用打包了,具体步骤和常见错误可以参考官网文档:

https://help.jeecg.com/ui/setup/electron-build

https://help.jeecg.com/ui/setup/electron-open

本文用来记录我的实践过程。

1、安装依赖

官网下载的代码,package.json并不包含electron依赖,先执行安装其他依赖,因为electron的依赖安装较慢,稍后单独安装。

先设置镜像,这样安装依赖会快一点。

pnpm config set registry https://registry.npmmirror.com/

pnpm install,其他依赖安装好了后,再单独安装electron。

pnpm install -Delectron@35.1.4

pnpm install -D electron-builder

pnpm install -D vite-plugin-electron

安装跟jeecgboot官网一样的electron版本,避免版本兼容性问题。

记得要加-D,这样他就会出现在devDependencies列表里。

依赖安装如果报错,就多试几次,我试了好几次才成功。

2、本地运行

pnpm runelectron:dev

果然跟官网一样报错了:

please delete node_modules/electron and try installing again。

在项目根目录下运行node node_modules/electron/install.js,会从远程下载electron的zip文件,下载速度非常慢,我耐心等待,结果下载到60%的时候,报错了。

在deepseek的帮助下,直接下载安装包和密钥文件。

https://npmmirror.com/mirrors/electron/35.1.4/electron-v35.1.4-win32-x64.zip

https://npmmirror.com/mirrors/electron/35.1.4/SHASUMS256.txt

把他们放在Cache目录下:

项目的根目录下执行以下命令:

# 1. 设置强制使用本地校验文件(核心!)

$env:electron_use_remote_checksums="false"

# 2. 设置缓存目录

$env:electron_config_cache="C:\Users\chengxl\AppData\Local\electron\Cache"

# 3. 设置镜像源(避免其他潜在下载)

$env:ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"

# 4. 验证环境变量是否生效

echo "远程校验已禁用: $env:electron_use_remote_checksums"

echo "缓存目录: $env:electron_config_cache"

确定远程校验已禁用为false之后,然后执行:

node node_modules/electron/install.js

这样代码很快完成,没任何输出。

以上操作的目的是强制让electron/install.js使用本地安装包和密钥文件来安装electron。

3、打包

打包的时候果然也遇到了官网提到的错误:

Cannot create symbolic link。

使用管理员身份运行命令提示符,cd到项目根目录,再执行pnpm run electron:build-all,就可以了,至此没遇到其他问题了。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/17 17:47:14

Dify部署过程中遇到Qwen3-VL-8B加载失败的解决方案

Dify 部署 Qwen3-VL-8B 加载失败?一文讲透根源与实战修复 在构建智能客服系统时,客户拍了一张产品照片发来:“这包是正品吗?”——如果 AI 能“看懂”这张图并回答“这是 LV 的 Neverfull 手袋,但拉链细节疑似仿品”&a…

作者头像 李华
网站建设 2026/6/21 1:19:15

MySQL深度优化(3):查询语句改写技巧

你敢信吗?⼀个政务系统的分⻚查询从5秒优化到0.1秒,只改了3⾏SQL!上周有个学员分享他们的案例:公安⼾籍查询系统,查询第1000⻚数据时,LIMIT 99900, 100耗时5.2秒,⽤⼾投诉不断。后来我们⽤了3个…

作者头像 李华
网站建设 2026/6/23 8:21:49

15、JSTL 国际化与本地化开发指南

JSTL 国际化与本地化开发指南 在当今全球化的互联网环境中,开发支持多语言和多地区的 Web 应用程序变得越来越重要。JSTL(JavaServer Pages Standard Tag Library)提供了一系列强大的工具,用于实现 Web 应用的国际化(I18N)和本地化(L10N)。本文将深入探讨 JSTL 中与国…

作者头像 李华
网站建设 2026/6/13 1:32:39

17、JSTL格式化操作:数字、日期与货币的本地化处理

JSTL格式化操作:数字、日期与货币的本地化处理 在当今全球化的互联网环境中,让网站能够被尽可能多的人访问至关重要。除了文本本地化,数字、日期和货币的本地化同样不可忽视。例如,日期“06/12/2004”,在美国人看来是6月12日,而大多数欧洲人会认为是12月6日。幸运的是,…

作者头像 李华
网站建设 2026/6/20 0:57:24

20、JSTL 创建数据源全解析

JSTL 创建数据源全解析 在开发 Web 应用时,创建数据源是与数据库交互的重要步骤。本文将详细介绍使用 JSTL 创建数据源的三种主要方法,帮助你根据不同的需求选择合适的方式。 1. 创建数据源的三种基本方式 从根本上来说,有三种创建数据源的方式,具体如下表所示: | 创建…

作者头像 李华
网站建设 2026/6/22 16:47:37

25、JSTL XML处理及常用动作参考详解

JSTL XML处理及常用动作参考详解 1. XML过滤 在处理XML文档时,可以使用SAX(Simple API for XML)过滤器来过滤特定的元素。SAX 是一种独立于语言、基于事件的 XML 解析 API,它通过回调方法来报告解析事件,如元素的开始和结束等。 例如,对于以下简单的 XML 文档: <…

作者头像 李华