【发布时间】:2020-10-10 00:30:45
【问题描述】:
我有一个用node js 编写的程序,我想将它捆绑并分发为“独立”可执行程序。
我想通过cmd 仅使用可执行文件名运行程序(不使用npm run start 或node file.js)。即my_program arguments。
最推荐的实现方式是什么?
谢谢。
【问题讨论】:
标签: node.js deployment bundle executable distribute
我有一个用node js 编写的程序,我想将它捆绑并分发为“独立”可执行程序。
我想通过cmd 仅使用可执行文件名运行程序(不使用npm run start 或node file.js)。即my_program arguments。
最推荐的实现方式是什么?
谢谢。
【问题讨论】:
标签: node.js deployment bundle executable distribute
您可以选择多个选项。我建议查看Pkg。
使用 Pkg,您可以将节点应用程序打包为适用于 Windows、Linux 或 Mac 的单个可执行文件。
通过运行以下命令在您的机器上全局安装 Pkg:
npm install -g pkg
然后将您的入口点添加到 package.json 文件中,如下所示:
{
"bin": "bin.js" // or whatever your point of entry is
}
然后,从您的应用目录中运行命令
pkg .
这将为 Windows、Linux 和 MacOS 构建可执行文件。
你可以通过运行来执行可执行文件:
Windows:your_exec-win.exe # windows
Linux:chmod u+x your_exec-linux; ./your_exec-linux
【讨论】: