javascript - 如何从同一个代码库自动构建两个相关的应用程序?
问题描述
这可能以前出现过,但我没有得到任何搜索结果命中。
我有一个Electron
使用Electron-Builder
. 我还从同一个代码库生成了一个名称不同的“播放器”应用程序,但隐藏了它的编辑器功能。
到目前为止,我一直在这样做的方式是在应用程序中定义一个“isPlayer”变量,并package.json
根据应用程序是“完整”版本还是“播放器”版本手动重命名相应的文件。它有效,但丑陋且脆弱(例如,我忘记将播放器应用程序的“isPlayer”变量设置为 true 的一个版本)。
是否有一些方法或工具可以让我自动化?
我想要做的是通过使用npm dist
命令传递变量来指定是否应该构建“完整”或“播放器”应用程序。
相关:我还必须生成具有不同“品牌”的相同“完整”和“播放器”应用程序。这不仅涉及名称,还涉及一些初始屏幕艺术、图标等。我一直在通过分支代码库、交换新的“品牌”package.json 文件和艺术并执行上述两步过程来手动执行此操作。这是一个令人讨厌和令人尴尬的黑客行为,我想找到一个更好的解决方案。
解决方案
推荐阅读
- javascript - 从数据列表中添加/删除项目两次或更多的问题
- c++ - 在 C++ 中将 int 转换为 char 时“缩小”如何工作?
- node.js - 我可以在passport.js中反序列化不同的用户,比如学生和管理员吗?
- html - 使用来自 ESP32-CAM 的 C++/Qt 将HTML 捕获为视频流
- c++ - 如何在 Vulkan 中获取下一帧呈现时间
- anaconda - 安全地删除 conda 环境?
- google-assistant-sdk - 车库的预期状态
- c++ - 如何在 C++ 中包含来自另一个文件的重载运算符 <<?
- c++ - 在未来的 C++ 版本中我们是否会有 size_t strlen(const char8_t*)
- networking - 桥接网络在 VMWare Player 15.5 上不起作用