gpt4 book ai didi

node.js - 如何将第三方二进制文件与 Electron 捆绑在一起?

转载 作者:搜寻专家 更新时间:2023-10-31 22:33:54 24 4
gpt4 key购买 nike

总的来说,我对 Electron 生态系统和桌面开发仍然是个新手,但我想做的是与我的软件捆绑在一起的第三方开源应用程序进行交互。首先,我不确定要分发的包选项应该是什么。通常有两个下载,一个是为已经安装了第三方二进制文件的用户提供的,另一个是包含它的?另外,我该如何实际打包和安装二进制文件?这应该是我的 package.json 上的一个选项吗?我应该执行什么样的脚本?是否有任何 npm 模块来促进这一点?

编辑 - 是否可以从我的 main.js 调用 npm,即使用户之前没有安装 Node ?我知道 Node 与 Electron 包捆绑在一起,但 npm 也是吗?

-本例中的二进制文件是 PostgreSQL

最佳答案

我想到了几个选项。

  1. 将第 3 方安装程序与您的应用捆绑在一起。这就是我最近所做的。在第一次运行时,我检查我需要的服务是否已安装/正在运行,如果没有,我将调用第 3 方安装程序/启动它。当安装程序退出时,我只需 app.relaunch() 并开始使用它。当然,对于您计划支持的每个平台,您都需要安装程序。而且您必须找出方法来检查是否为每个平台(正确)安装了软件。

  2. 将二进制文件与您的应用捆绑在一起。当然,您可以将几乎所有东西与您的 Electron 应用程序捆绑在一起。同样,您需要为计划支持的每个平台准备二进制文件。当然,它们不应该链接到默认用户在他的机器上没有的任何东西,比如 SDK 和额外的 header ......

  3. 不太舒服,但您始终可以添加一些启动消息或下载前消息,告诉用户他需要软件 xy 才能运行您的应用程序。

  4. 1/2 的导数:按需下载所需内容。对于您的示例,这意味着检查用户的操作系统和架构,然后仅下载所需的安装程序或二进制文件(如果可用)。您也可以在用户的​​机器上构建这些东西,尽管这可能是最糟糕/最大/最复杂的解决方案。

  5. 还有像https://www.npmjs.com/package/pg这样的东西- 如果有人已经构建了你需要的东西,你应该经常检查 npm ;)

我建议使用出色的 electron-builder这使得将东西与您的应用程序捆绑在一起变得轻而易举。

如果您需要更多信息,请随时发表评论。

关于node.js - 如何将第三方二进制文件与 Electron 捆绑在一起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38918914/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com