使用electron将vue项目打包成exe程序

本文详细介绍了如何使用Electron结合Vue框架搭建并打包桌面应用程序的步骤,包括下载Electron、修改路径、打包项目、预览效果、安装依赖、设置打包参数、生成exe文件及封装成安装包等全过程。

一、下载electron

git clone https://github.com/electron/electron-quick-start

二、进入我们自己的项目,修改公共路径为相对路径(如果不修改,则在npm run build后出现白屏情况 。注:我由于首先就修改了路径,所以没有出现所谓的白屏情况,这里备注的目的是为了告知不修改可能产生的问题,因为很多人踩过坑)。

vue-cli3+版本的在vue.config.js中修改publicPath 将"/"修改为"./" ,如果是vue-cli2+版本项目则在index.js文件中的assetsPublicPath 路径修改"./"。

、打包自己的项目,这个无需多言,将打包后生成的dist文件夹拷贝到clone下来的electron项目下。记得先删除electron项目自带的index.html文件。

 

四、找到入口文件 main.js ,修改打包的文件路径为我们的index.html:

// main.js 原始内容 
mainWindow.loadFile('index.html') 
// 修改后的内容 
mainWindow.loadFile('./dist/index.html') 

五、安装依赖库,运行下列指令即可进行打包效果预览,但是会遇到下载electron-vx.x.x-win32-x64.zip文件无法下载或者下载速度慢的问题,所以需要修改配置。

npm config edit

在弹出的文件中增加一行内容 electron_mirror=https://npm.taobao.org/mirrors/electron/

然后再执行

npm install

然后使用npm run start 预览效果。

六、安装打包依赖

npm install electron-packager --save-dev

七、进入 electron项目的package.json ,在 scripts 中添加 packager 指令,如下所示:

"packager": "electron-packager ./ App --platform=win32 --arch=x64 --electron-version=3.0.0 --overwrite"

网上很多资料的version=2.0.0,这样打的exe包运行会报错,需要修改为3.0.0。

八、如果你想修改最后打包出来的exe文件图标,类似于favicon,或者EXE的名字,可以设置 packager 的指令内容为,icon的路径自己调整下哦,更多配置内容请查阅文档哈

"packager": "electron-packager ./ YOUR_APP_NAME --platform=win32 --arch=x64 --electron-version=2.0.0 --icon=./dist/favicon.ico --overwrite" 

九、打包

npm run packager

 命令执行后会生成一个文件夹App-win32-x64,里面找到App.exe执行即可。

十、将桌面应用文件夹封装成EXE安装包,有很多方法可以达到我们的目的,我在这里选择 Inno Setup 作为封装工具。

Inno Setup参考资料。https://www.cnblogs.com/benpaodejiandan/p/7081011.html

本文章属于流程操作的,所以我也是按照网上资料来的,本意并无抄袭,只是当作记录。再者其中也遇到其他问题,所以记录下来。

参考资料:

1、https://zhuanlan.zhihu.com/p/59765568

2、https://blog.youkuaiyun.com/dling8/article/details/105434000

<think> 我们使用electron-builder来打包Electron+Vue项目exe安装包。 步骤: 1. 确保项目基于electron-vue脚手架创建,或者已经集VueElectron。 2. 安装electron-builder:在项目根目录下运行 `npm install electron-builder --save-dev` 或 `yarn add electron-builder --dev` 3. 配置package.json文件,添加build字段来配置打包选项,例如应用名称、版本、图标等。 4. 在package.json的scripts中添加打包命令,例如: "scripts": { "build": "vue-cli-service electron:build" } 注意:如果使用vue-cli-plugin-electron-builder,则可以直接使用上述命令。 5. 如果需要生安装包,确保配置了nsis或其它安装程序配置。 6. 运行打包命令:`npm run build` 或 `yarn build` 注意:在打包之前,确保已经构建了Vue项目(通常打包命令会自动构建)。 以下是配置示例(package.json中的build字段): ```json "build": { "appId": "com.example.app", "productName": "YourApp", "copyright": "Copyright © 2021", "directories": { "output": "dist_electron" }, "nsis": { "oneClick": false, // 是否一键安装 "allowToChangeInstallationDirectory": true // 允许用户选择安装目录 }, "win": { "target": "nsis", // 安装包的目标类型,可以是nsis(安装程序)或portable(便携版) "icon": "build/icon.ico" // 应用图标 } } ``` 打包后的安装包默认输出到dist_electron目录下。 注意:如果遇到问题,可能需要检查依赖、网络(因为electron-builder会下载预编译的二进制文件)以及配置是否正确。 另外,如果没有使用vue-cli-plugin-electron-builder,而是直接使用electron-builder,则打包命令可能是: "build": "electron-builder --win" 现在,根据要求,在回答后提出3-5个相关问题。 </think> 在 Electron + Vue 项目打包 EXE 安装包的步骤如下: ### 核心步骤: 1. **安装依赖** 确保 `electron-builder` 已安装: ```bash npm install electron-builder --save-dev # 或 yarn add electron-builder --dev ``` 2. **配置 `package.json`** 添加以下字段: ```json { "name": "your-app", "version": "1.0.0", "scripts": { "build": "vue-cli-service build && electron-builder" // Vue CLI 项目 }, "build": { "appId": "com.example.app", "win": { "target": "nsis", // 生安装包 "icon": "build/icon.ico" }, "nsis": { "oneClick": false, // 允许用户选择安装目录 "allowToChangeInstallationDirectory": true } } } ``` 3. **准备资源文件** - 图标文件:`build/icon.ico`(推荐 256×256 像素) - 静态资源:确保 Vue 编译后的文件位于 `dist` 目录 4. **执行打包命令** ```bash npm run build # 同时构建 VueElectron # 或分步执行: npm run build:client # 先构建 Vue electron-builder --win # 再打包 EXE ``` 5. **获取安装包** 打包后,在 `dist_electron` 目录下生- `your-app Setup 1.0.0.exe`(安装程序- `your-app-1.0.0-win.zip`(绿色免安装版) ### 常见问题解决: - **图标不显示**:确认 `.ico` 文件路径正确且尺寸合规 - **安装包无权限**:在 `nsis` 配置中添加 `"perZone": "allUsers"` - **白屏问题**:检查 Vue 路由是否使用 `hash` 模式(Electron 需兼容)
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值