独立的Node.js应用程序
我正在考虑开发一个由两部分组成的桌面应用程序:
- 用户界面(例如Java应用程序)
- 后端Node.js服务器
2部分通过sockets连接。 不要问为什么我知道这很奇怪。
我希望能够通过安装程序向客户提供应用程序。 我不希望用户必须自己安装Node.js。
有没有办法将Node.js服务器作为独立安装,即不需要在系统上全局安装Node.js。
这是任何问题(Windows,Linux,Mac OS X …)环境。
您可以将二进制文件与应用程序捆绑在一起。 不需要安装任何东西来运行Node应用程序。 二进制文件与安装程序在同一页面上可用 。
你只需知道二进制文件的位置,但是我认为你已经有了一个安装程序,可以将它们放在已知的地方。
// To start the node process $ /path/to/binaries/npm install $ /path/to/binaries/node myApp.js
更新2017-05-04 :有一个新的小镇:
- PKG(由zeit)
更新2016-11-14 :如今Electron和nwjs似乎是最好的select。
- 电子
- nwjsbuild设者
原文 :
您需要经过许多步骤才能创build安装程序,并且每个操作系统都有所不同。 例如:
- 在Mac OS X上,您需要创build一个
.pkg
,有关于如何在此处执行操作的说明: https : //coolaj86.com/articles/how-to-create-an-osx-pkg-installer.html - 在Ubuntu Linux上,你需要创build一个
.deb
,这里有如何做到这一点的说明: https : //coolaj86.com/articles/how-to-create-a-debian-installer.html - 在Microsoft Windows上,您需要创build一个
.exe
或.msi
,这里有如何使用innosetup安装程序的说明: https ://coolaj86.com/articles/how-to-create-an-innosetup-installer.html
Node-Webkit是一个选项,但它确实没有设置为“服务器 – 客户端”types的关系。
另一种select是使用应用程序安装程序打包node.js安装程序。 然后当应用程序启动时,你可以启动一个node.js进程。 我知道有些开发者一直在用titanium做这个,这里有更多的信息资料 。
希望这可以帮助!
这里有一个选项: Light Table是一个节点应用程序,但安装很好,并在大多数操作系统上整合了GUI(webkit)。
为此,它利用node-webkit 。 (直接从html页面运行节点代码)以下是包装文档 。
值得一提的是由GitHub制作的Electron 。 用于构buildAtom,Slack,Visual Studio Code等。
我刚刚偶然发现了一个nexe工具,它是一个“从你的node.js应用程序中创build一个单一的可执行文件”的工具。
我还没有尝试过,但我想即使没有安装程序 – 只生成一个独立的二进制文件。
基于微软Nodejs的指导方针 。
也许这里是另一个select, 在Windows上的IIS中安装和运行node.js应用程序
Electron是用JavaScript,HTML和CSS开发跨平台桌面应用程序的最好也是最简单的方法之一。