node js - 如何创建用于商业用途的构建?

node js - How do I create build for commercial usage?

我正在开发 node js 应用程序,现在可以使用了。我想把这个应用程序制作成exe,以便它可以用于商业用途。

到目前为止,我使用了 enclose 模块来编译应用程序的代码,但我发现其中存在一些问题(应用程序在空闲状态下崩溃)。应用 运行 无需封装或编译代码即可正常使用。

我在 google 上搜索并找到了一些备用模块,如 JXcore、Node webkit 和 Electron 等,但 JX 核心给出的错误与 SO question.

中的相同

node web-kit 中,它的功能看起来不合适,因为我们需要它的可执行文件和一些 dll 以及我们的代码,这使得我们的包体积庞大。

我也试过jxcore。 exe 和我们使用的模块的主要问题是它们与本机模块一起工作的能力,在我的例子中是 Kinect.node 模块。无法编译此模块。我们需要一个解决方法来将它与我们的 .exe 文件一起打包。 Enclose 在其内置功能中提供了此解决方法。

同时查看来自 EncloseJS 的回复,实际上 运行 只有一个人在购买时给出了进一步的说明。商业用途需要购买。

如果是 Electron,它仅支持 Electron-based application source code。所以如果我选择这个那么我必须修改我的应用程序代码。

所以有人可以建议我如何从那里的节点 js 代码制作 exe 文件吗?

谢谢!

我之前遇到过同样的问题,节点 js 应用程序在后台 运行 时关闭。现在我正在使用进程管理器 2 (pm2),它工作正常,如果应用程序由于任何其他原因崩溃,它会自动重新启动。

我得到了答案:

首先,原因是 DiskDB 数据库,它与节点 webkit 不兼容,所以这就是我收到本机模块错误的原因。

现在我正在为本地数据库使用 sqlite3 模块。它比 DiskDB 更好。

其次,原因之一是enclose的免费版本,Enclose JS模块的付费版本忽略了我遇到的超时问题。

这样我的问题就解决了