node

在本教程中,我们将学习如何将Node.js应用程序打包成一个可执行文件(.exe)。这对于将应用程序分发给没有Node.js开发环境的用户特别有用。我们主要会介绍两种方法:

1. 使用pkg打包

2. 使用nexe打包

## 方法1:使用pkg打包

`pkg`是一个简单易用的命令行工具,能将Node.js项目编译成为一个独立的二进制可执行文件。它支持多个平台的可执行文件。

### 安装pkg

首先,使用npm(Node.js包管理器)安装pkg。在命令提示符或终端中输入以下命令:

```bash

npm install -g pkg

```

此命令将全局安装pkg,使其在您的计算机上的任何位置都可用。

### 项目文件结构

假设您有一个名为`app.js`的Node.js应用程序和`package.json`文件。

```

myNodeApp

├── app.js

└── package.json

```

### 执行pkg命令

在您的项目根目录中打开命令提示符或终端,并运行以下命令:

```bash

pkg app.js

```

这将为当前平台生成一个可执行文件。如果需要针对不同的平台生成可执行文件,请在命令中添加目标参数:

```bash

pkg app.js --targets windows,macos,linux

```

在您的项目目录中,将生成以下文件:

```

myNodeApp

├── app.js

├── app.exe (on Windows)

├── app-macos (on macOS)

├── app-linux (on Linux)

└── package.json

```

这样,您就可以直接运行生成的`.exe`文件(在Windows上)来运行您的Node.js应用程序。

## 方法2:使用nexe打包

`nexe`是另一种将Node.js应用程序打包成可执行文件的工具。它将Node.js运行时和应用程序捆绑在一起,生成一个单一的可执行文件。

### 安装nexe

使用npm安装nexe:

```bash

npm install -g nexe

```

### 项目文件结构

假设您的项目结构与上一个例子相同,包含`app.js`和`package.json`文件。

### 执行nexe命令

在您的项目根目录中打开命令提示符或终端,然后运行以下命令:

```bash

nexe app.js

```

这将为当前平台生成一个可执行文件。您可以在命令中添加可选的`-t`参数来为不同的平台生成可执行文件。

```bash

nexe app.js -t windows-x64-12.18.0

```

上述命令会为Windows x64平台生成一个包含Node.js 12.18.0版本的可执行文件。

您现在应该拥有:

```

myNodeApp

├── app.js

├── app.exe (on Windows)

├── app-macos (on macOS)

├── app-linux (on Linux)

└── package.json

```

现在,您可以运行生成的`.exe`文件(在Windows上)来运行您的Node.js应用程序。

总结

在本教程中,我们学习了如何使用pkg和nexe将Node.js应用程序打包成可执行文件。这将帮助您轻松分发您的应用程序,并确保用户无需安装Node.js运行环境即可轻松使用您的应用程序。