使用Electron-packager打包已有的web项目,发布客户端
1、先拉electron代码
git clone https://github.com/electron/electron-quick-start
2、将web项目拷贝到electron-quick-start文件夹下
3、更改main.js 更换引用的html
const {app, BrowserWindow, Menu} = require('electron') const path = require('path') //因为项目使用server,添加了这个库,添加前,别忘了使用 npm i http-server 安装库。 const httpServer = require('http-server'); function createWindow () { // Create the browser window. const mainWindow = new BrowserWindow({ width: 800, height: 600, webPreferences: { preload: path.join(__dirname, 'preload.js') } }) //注意 这里是我添加的,去掉electron自带菜单 Menu.setApplicationMenu(null) mainWindow.loadFile('output/index.html') httpServer.createServer({root:"./output"}).listen(80); }
4、安装打包工具,添加打包命令
npm i electron-packager
"scripts": { "start": "electron .", "packager": "electron-packager ./ APP --platform=win32 --arch=x64 --electron-version=19.0.6 --icon=logo.ico --overwrite" }
命令解释:
electron-packager <location of project> <name of project> <platform> <architecture> <electron version> <optional options>
location of project:项目所在路径
name of project:打包的项目名字
platform:确定了你要构建哪个平台的应用(Windows、Mac 还是 Linux)
architecture:决定了使用 x86 还是 x64 还是两个架构都用
electron version:electron 的版本
optional options:可选选项
例子:
electron-packager ./ helloworld --platform=win32 --arch=x64 --out=./app --electron-version=3.0.7
5、运行打包命令
npm run packager
可能遇到的坑:
1、打包超时
# yarn yarn config set electron_mirror https://npmmirror.com/mirrors/electron/ # npm npm config set ELECTRON_MIRROR https://npmmirror.com/mirrors/electron/
2、图标报错
rcedit.exe failed with exit code 1. Reserved header is not 0 or image type is not icon for './src/assets/olami.ico'
解决方法:
下载生成ico工具:
https://icofx.ro/
下载之后,选择需要的图片(其他格式),后ctrl+s生成.ico图片
长风破浪会有时,直挂云帆济沧海
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!