1

commander.js我为 Node.js 平台构建了简单的命令行应用程序。现在我想把它编译成简单的exe文件,我可以直接执行。

意味着我想要一个完整的应用程序的可执行文件

这是我的应用程序结构

APP_ROOT
  | - package.json
  | - node_modules
  | - node_modules/.bin/myapp.bat
  | - node_modules/myapp/bin/myapp
  | - node_modules/myapp/bin/myapp-action1
  | - node_modules/myapp/bin/myapp-action2

谢谢

4

2 回答 2

3
  • 这是,我如何将我的 node.js 命令行应用程序打包到单个可执行文件
  • 使用安装pkg模块npm i -g pkg
  • 这是我的package.json文件

json

{
  "name": "my-app-exe",
  "version": "1.0.0",
  "description": "Myapp-Cli tool as executable",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [
    "myapp",
    "cli",
    "exe"
  ],
  "author": "Shisht",
  "license": "MIT",
  "devDependencies": {
    "myapp": "1.0.0"
  },
  "bin": "node_modules/myapp-cli/bin/cli",
  "pkg": {
    "assets": "node_modules/**/*"
  },
  "help": "pkg . --target host --output myapp-1.0.0-x64.exe --debug"
}
  • 用于打包myapp的命令myapp.exe pkg . --target host --output myapp-1.0.0-x64.exe --debug
于 2017-10-23T02:24:28.493 回答
1

没有某种 Node 运行时来运行 Node 应用程序是不可能的-因此,如果您希望将您的程序作为独立的分发.exe,您必须将 Node 本身捆绑到所述可执行文件以及您的代码中。有多种工具可以为您执行此操作,例如EncloseJS

于 2017-10-20T11:00:58.037 回答