Electron 一条命令打包成Windows平台安装包解决方案
发布于 9 年前 作者 Qquanwei 32404 次预览 最后一次回复是 9 年前 来自 分享
你是否还在用:
- electron-winstaller
- electron-packager
每次打包都是各种命令来一遍
或者你想使用inno-setup而不得不在’linux/osx’上编译出exe再切换到虚拟机上用inno-setup重新打包一遍
或者你在用electron自带的electron.autoUpdater 而不得不忍受着它非常繁琐的发包方式
为了解决以上问题,为了能够仅仅一个命令就能直接将你的源码 生成 一个inno-setup 方式的安装包
** electron-windows-inno-installer ** 诞生了 地址: (https://github.com/Qquanwei/electron-windows-inno-installer)
有了它,你在生成installer.exe的时候仅仅需要执行一条命令
electron-windows-inno-installer mysetup.iss --icon ./favicon.ico --platform win32-x64
它将自动将你的electron代码生成一个指定平台可执行文件 然后执行inno-setup将可执行文件上下文打包出一个安装文件。
electron-windows-inno-installer 将极大方便用户的 打包,更新,发包 而且无需考虑中间环节,其使用的electron版本目前也在保持与electron最新版尽量同步更新。
(为了能够让它更好用,欢迎push : https://github.com/Qquanwei/electron-windows-inno-installer )
12 回复
我用你提供的这个模块打包我的 electron 应用的时候 报如下错误,能否帮忙看下什么原因,多谢啦。 没加调试代码前错误是除红框外的信息输出。
能帮忙看下 是哪一步出错了吗? 原因是啥?
好像是找不到 gulp 导致的。
但是你说本地执行gulp正常 很奇怪,gulp有在搜索路径里吗?
@Shaman05 楼下~
我不懂啊
@zsea 什么?
@Qquanwei 是啊,我本地 gulp 运行没问题的,全局安装的,我们开发项目也要用的。
@Shaman05 提示信息显示的是 spawn 找不到 gulp
可以按照下面两种方式试下:
1
electron-windows-inno-installer/cli.js 文件中spawn那句话, 修改两处,改成如下(没有大括号):
2
当然你也可以强制执行下面命令打包项目:
缺点是不能在改命令中追加配置信息,可以参照cli.js中的环境变量增加你的配置
设置环境变量 INNOFILE 为你的inno路径,PLATFORMS 为平台列表,以逗号隔开,例如其值为 "win32-ia32,win32-x64" ICON为打包生成的exe图标路径
请问支持中文路径或文件名吗?
@hulikui 支持
@hulikui 支持
关于 autoUpdater。github上的例子是要引入 node-modules:const autoupdater = require(‘electron-windows-inno-installer’); 是不是打包是也要把 “node-modules/” 的所有模块打进去?
@josuabriter 打包的时候会根据package.json的dependences中指定的包打包进去