70

我正在考虑开发一个由两部分组成的桌面应用程序:

  • 用户界面(例如 Java 应用程序)
  • 后端 Node.js 服务器

两部分通过插座连接。不要问我为什么知道这很奇怪。

我希望能够通过安装程序向客户提供应用程序。我不希望用户必须自己安装 Node.js。

有没有办法将 Node.js 服务器安装为独立的,即无需在系统上全局安装 Node.js。

这是任何(Windows、Linux、Mac OS X...)环境的问题。

4

6 回答 6

37

2017-05-04 更新:镇上有一个新孩子:

2016-11-14 更新:如今 Electron 和 nwjs 似乎是最好的选择。

原文

创建安装程序需要执行多个步骤,并且每个操作系统的安装程序都不同。例如:

于 2013-09-09T17:09:30.927 回答
18

您可以将二进制文件与您的应用程序捆绑在一起。无需安装任何东西即可运行 Node 应用程序。二进制文件与安装程序在同一页面上可用。

你只需要知道二进制文件在哪里,但我假设你有一个安装程序可以将它们放在已知的地方。

// To start the node process
$ /path/to/binaries/npm install
$ /path/to/binaries/node myApp.js
于 2012-11-15T03:07:48.863 回答
9

Node-Webkit是一个选项,但它实际上并没有设置为执行“服务器 - 客户端”类型的关系。

另一种选择是将 node.js 安装程序与您的应用程序安装程序一起打包。然后,当应用程序启动时,您可以启动 node.js 进程。我知道一些开发人员一直在用钛做这件事,这里有一些更多的信息信息

希望这可以帮助!

于 2012-11-14T23:50:39.307 回答
4

这是一个选项:Light Table是一个节点应用程序,但安装得很好,并且在大多数操作系统上干净地集成了 GUI(webkit)。

为此,它利用了node-webkit。(直接从 html 页面运行节点代码。)这是打包文档

于 2012-11-14T22:13:35.717 回答
3

值得一提的是 GitHub 制作的Electron 。用于构建 Atom、Slack、Visual Studio Code 等。

于 2015-12-06T11:11:26.033 回答
1

我刚刚偶然发现了nexe——一个“从你的 node.js 应用程序中创建单个可执行文件”的工具。

我还没有尝试过,但我想即使没有安装程序也可以工作——只生成一个独立的二进制文件。

于 2015-06-04T12:16:44.947 回答