我正在考虑开发一个由两部分组成的桌面应用程序:
- 用户界面(例如 Java 应用程序)
- 后端 Node.js 服务器
两部分通过插座连接。不要问我为什么知道这很奇怪。
我希望能够通过安装程序向客户提供应用程序。我不希望用户必须自己安装 Node.js。
有没有办法将 Node.js 服务器安装为独立的,即无需在系统上全局安装 Node.js。
这是任何(Windows、Linux、Mac OS X...)环境的问题。
我正在考虑开发一个由两部分组成的桌面应用程序:
两部分通过插座连接。不要问我为什么知道这很奇怪。
我希望能够通过安装程序向客户提供应用程序。我不希望用户必须自己安装 Node.js。
有没有办法将 Node.js 服务器安装为独立的,即无需在系统上全局安装 Node.js。
这是任何(Windows、Linux、Mac OS X...)环境的问题。
2017-05-04 更新:镇上有一个新孩子:
2016-11-14 更新:如今 Electron 和 nwjs 似乎是最好的选择。
原文:
创建安装程序需要执行多个步骤,并且每个操作系统的安装程序都不同。例如:
.pkg
,这里有关于如何执行此操作的说明:https ://coolaj86.com/articles/how-to-create-an-osx-pkg-installer.html.deb
,这里有关于如何执行此操作的说明:https ://coolaj86.com/articles/how-to-create-a-debian-installer.html.exe
or .msi
,这里有关于如何使用 innosetup 安装程序的说明:https ://coolaj86.com/articles/how-to-create-an-innosetup-installer.html您可以将二进制文件与您的应用程序捆绑在一起。无需安装任何东西即可运行 Node 应用程序。二进制文件与安装程序在同一页面上可用。
你只需要知道二进制文件在哪里,但我假设你有一个安装程序可以将它们放在已知的地方。
// To start the node process
$ /path/to/binaries/npm install
$ /path/to/binaries/node myApp.js
Node-Webkit是一个选项,但它实际上并没有设置为执行“服务器 - 客户端”类型的关系。
另一种选择是将 node.js 安装程序与您的应用程序安装程序一起打包。然后,当应用程序启动时,您可以启动 node.js 进程。我知道一些开发人员一直在用钛做这件事,这里有一些更多的信息信息。
希望这可以帮助!
这是一个选项:Light Table是一个节点应用程序,但安装得很好,并且在大多数操作系统上干净地集成了 GUI(webkit)。
为此,它利用了node-webkit。(直接从 html 页面运行节点代码。)这是打包文档。
值得一提的是 GitHub 制作的Electron 。用于构建 Atom、Slack、Visual Studio Code 等。
我刚刚偶然发现了nexe——一个“从你的 node.js 应用程序中创建单个可执行文件”的工具。
我还没有尝试过,但我想即使没有安装程序也可以工作——只生成一个独立的二进制文件。