繁体   English   中英

在 Electron 中,如何在电子封装器中仅包含特定的 node_modules?

[英]In Electron, how to include only specific node_modules with electron-packager?

我正在尝试打包我的电子应用程序,它需要 mqtt 和节点通知程序模块。 所以我想做的是排除除它们之外的所有 node_modules。

假设我想从打包中排除这些文件:

  • npm-调试
  • gulpfile.js
  • .vscode

所以设置 --ignore 选项是这样的:

--ignore='npm-debug|gulpfile\.js|\.vscode'

工作正常。 但是除了mqtt和node-notifier之外,另外排除node_modules,我不知道如何制作正则表达式!

--ignore='npm-debug|gulpfile\.js|\.vscode|^((?!node_modules/mqtt).)$'  // NOT WORKING

只检查 node_modules, /^((?!node_modules/mqtt).)$/ 是有效的,但将它们组合成单个正则表达式行,它不起作用。

我知道我的正则表达式是错误的,但我尝试了正则表达式字符和我的想象力的每一种组合,每次尝试都失败了,在谷歌上找不到任何解决方案。

这是正则表达式测试站点,您可以看到我被困在哪里。

任何建议将不胜感激。 谢谢!

来自打包程序github 页面

注意不要在最终应用程序中包含您不想要的node_modules 如果您将它们放在package.jsondevDependencies部分,默认情况下,与这些依赖项相关的任何模块都不会复制到应用程序包中。 (可以使用--no-prune标志关闭此行为。)

来自关于--prune标志的电子包装器API 页面

运行包管理器命令以从输出的 Electron 应用程序中删除package.jsondevDependencies部分中指定的所有包。

你应该能够简单地把所有的包,除了mqttdevDependencies和运行包装

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM