我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

在本篇文章中,苏南大叔将要给大家讲述electron-packager的高级应用,也就是其相关的参数。当然这里也不可能做到大全,但是常见的参数都会罗列一下,如果碰到新的参数会再进行补充。

苏南大叔:electron-packager 命令常用参数大全(含换图标方案) - electron-packager-params
electron-packager 命令常用参数大全(含换图标方案)(图3-1)

本文测试环境:macelectron-packager@10.1.0

对于简单的测试electron来说,只需要最简单的electron-packager .命令就可以了。具体参见:

当然,如果您是一名高端用户,就需要查看本篇文章的内容,来确定一下打包时的更多参数。

最豪华版本的打包命令

rimraf out && cross-env NODE_ENV=production && electron-packager ./ appname --platform=win32 --arch=x64 --win32metadata.FileDescription='' --overwrite --ignore=node_modules/electron-* --ignore=node_modules/.bin --ignore=.git --ignore=out --no-prune --electron-version=1.7.9 --out=out --icon=assets/app-icon/win/app.ico --asar

上述命令能够执行的前提是全局安装了如下npm包:

npm install rimraf cross-env electron-packager -g --save-dev

苏南大叔:electron-packager 命令常用参数大全(含换图标方案) - npminstall
electron-packager 命令常用参数大全(含换图标方案)(图3-2)

参数解释

  • rimraf 一个豪华版本的rm -rf,兼容window
  • cross-env 一个豪华版本的环境变量设置,有NODE_ENV=*的地方,就可以考虑使用cross-env,兼容window。
  • ./,一般为package.json的位置。具体可以见这里:https://newsn.net/say/electron-quick-start-modify.html
  • appname,这个会影响你打包完毕的可执行文件(exe/dmg)的名字(appname.exe)。
  • --platform--arch,这两个参数有非常多的变形。这里有详细解释:https://newsn.net/say/electron-packager-basic.html
  • --win32metadata.FileDescription,文件描述信息。见这里:https://newsn.net/say/electron-packager-exe-info.html
  • --overwrite,是否覆盖原有的生成文件。它和下面几项有关系:--out=out--ignore=outrimraf out
  • --no-prune,这个参数请慎用,是说不处理node_modules里面dev依赖包,把相关的代码都放进最终asar里面。默认情况下,是会将dev相关的node_modules里面的包给去除之后,再打包的。注意:目前的最新版electron-packager里面没有--prune参数。
  • --electron-version,指定打包时使用的electron的版本。见这里:https://newsn.net/say/electron-packager-control-version.html注意:最新版的electron-packager没有--version参数。
  • --out打包完的可执行文件,放在在哪里。
  • --icon设置打包的时候的图标。敲黑板重点,天天有人问如何更换这个图标,就这里更换。图标制作的问题,请参见:https://newsn.net/say/electron-icns.htmlhttps://newsn.net/say/electron-ico.html 。图标都是特制的图标,试图不制作图标就能完美无缺更换的想法,都是徒劳的,千万牢记。
  • --asar打包选项,是否在resource文件夹下面,生成app.asar文件。否则将会是个app文件夹加上自己的代码文件。
  • --ignore,要排除掉的不打包的文件,可以叠加效果。主要是出于减少最终文件大小的考虑。
  • --extra-resource,可以将第三方资源,在打包的时候,复制到app.asar的同级目录。

更多参数

当然,还是有很多的参数,没有列出来,更多信息:

electron-packager --help

苏南大叔:electron-packager 命令常用参数大全(含换图标方案) - electron-builder-ui
electron-packager 命令常用参数大全(含换图标方案)(图3-3)

相关文章

如果您看到了unable to find a vaild app的错误提示,请检查您的打包命令。也就是electron-packager ./中的./这个实际目录内的内容。

如果您使用了react或者vue之类的,需要二次编译的技术,请确认:您打包的是您的编译完的目录么?目录内的代码是完整的么?
https://newsn.net/say/electron-vue-build-command.html

如果您使用了最普通的代码编写方式,可以查看下面这个文章的内容:
https://newsn.net/say/electron-quick-start-modify.html

--asar--ignore--extra-resource,这三个参数是紧密联系的。可以查看:
https://newsn.net/say/electron-packager-extra-resource.html

总结

electron-packagerelectron开发中,最常见的打包命令。如果大家觉得,还有其他的参数是需要补充进来的,留言给苏南大叔,苏南大叔再进行补充说明。

更多electron开发的精彩经验文章,请点击这里查看。

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。