如何减小 Electron 应用程序的应用程序大小?
How do I reduce the app size of an Electron app?
我使用最新的 Electron 版本 10.0.3
并为 app
和 mas
创建了一个目标(mac-app-store),但我对它创建的应用程序。
我已经找到了一些涵盖这些主题的博文,但我的应用程序大小异常大,以至于我无法查明我的情况的原因。
这是尺寸列表:
目标:app
- 电子框架 (130 MB)
- app.asar (462 MB)
目标:mas
:
- 电子框架 (130 MB)
- app.asar (1.1GB)
请注意,在 mas
版本中,app.asar
的大小是原来的两倍。首先,我假设它现在也可以为新的 arm64
架构编译,但它只是 x86_64
。造成这些巨大应用程序大小的原因可能是什么,为什么 mas
是大小的两倍?
asar 存档的大小很可能与您使用的节点模块有关
你可以像这样提取app.asar
npx asar extract app.asar dest
然后您可以在提取的文件夹上使用像 WinDirStat 这样的工具来确定最有罪的模块,您也许可以删除或替换它们
您也可以在打包前使用modclean删除一些模块中有时包含的不需要的垃圾
此外,确保将仅在开发中需要的模块安装为 devDependencies
,这样 electron-builder
就不会打包它们。 electron
例如,应该在 devDependencies
我使用最新的 Electron 版本 10.0.3
并为 app
和 mas
创建了一个目标(mac-app-store),但我对它创建的应用程序。
我已经找到了一些涵盖这些主题的博文,但我的应用程序大小异常大,以至于我无法查明我的情况的原因。
这是尺寸列表:
目标:app
- 电子框架 (130 MB)
- app.asar (462 MB)
目标:mas
:
- 电子框架 (130 MB)
- app.asar (1.1GB)
请注意,在 mas
版本中,app.asar
的大小是原来的两倍。首先,我假设它现在也可以为新的 arm64
架构编译,但它只是 x86_64
。造成这些巨大应用程序大小的原因可能是什么,为什么 mas
是大小的两倍?
asar 存档的大小很可能与您使用的节点模块有关
你可以像这样提取app.asar
npx asar extract app.asar dest
然后您可以在提取的文件夹上使用像 WinDirStat 这样的工具来确定最有罪的模块,您也许可以删除或替换它们
您也可以在打包前使用modclean删除一些模块中有时包含的不需要的垃圾
此外,确保将仅在开发中需要的模块安装为 devDependencies
,这样 electron-builder
就不会打包它们。 electron
例如,应该在 devDependencies