首页 > 解决方案 > 如何从同一个代码库自动构建两个相关的应用程序?

问题描述

这可能以前出现过,但我没有得到任何搜索结果命中。

我有一个Electron使用Electron-Builder. 我还从同一个代码库生成了一个名称不同的“播放器”应用程序,但隐藏了它的编辑器功能。

到目前为止,我一直在这样做的方式是在应用程序中定义一个“isPlayer”变量,并package.json根据应用程序是“完整”版本还是“播放器”版本手动重命名相应的文件。它有效,但丑陋且脆弱(例如,我忘记将播放器应用程序的“isPlayer”变量设置为 true 的一个版本)。

是否有一些方法或工具可以让我自动化? 我想要做的是通过使用npm dist命令传递变量来指定是否应该构建“完整”或“播放器”应用程序。

相关:我还必须生成具有不同“品牌”的相同“完整”和“播放器”应用程序。这不仅涉及名称,还涉及一些初始屏幕艺术、图标等。我一直在通过分支代码库、交换新的“品牌”package.json 文件和艺术并执行上述两步过程来手动执行此操作。这是一个令人讨厌和令人尴尬的黑客行为,我想找到一个更好的解决方案。

标签: javascriptnode.jselectronpackage.jsonelectron-builder

解决方案


推荐阅读