node 打包exe

在本文中,我们将介绍如何将 Node.js 项目打包成单个可执行的 `.exe` 文件。生成的 `.exe` 文件将包含您的完整项目,并可以在没有 Node.js 环境的 Windows 电脑上运行。我们将通过一个名为 `pkg` 的实用程序来实现这一目标。`pkg` 是一个用于将 Node.js 应用程序打包成可执行文件的命令行工具,它将整合你的源代码、依赖项以及 Node.js 运行时,以便在目标平台上独立运行。

### 原理

`pkg` 将您的 Node.js 项目及其依赖项打包到一个可执行文件中。这个可执行文件会包含一个与 Node.js 平台无关的二进制文件。同时还在 exe 文件中捆绑了一个虚拟文件系统,该文件系统包含了项目源代码和模块等资源。当用户运行 `.exe` 文件时,应用程序将按照正常的 Node.js 环境运行。

### 准备工作

首先确保您已经安装了 Node.js 并在项目根目录创建了 `package.json` 文件,您可以通过运行 `npm init` 来生成 `package.json`。

### 如何使用 pkg 打包 Node.js 项目

1. 安装 pkg:

请在项目根目录下运行以下命令:

```bash

npm install -g pkg

```

这将全局安装 `pkg`,使其在您的系统上可用。

2. 配置入口点:

确保在您的 `package.json` 中的 `main` 字段指向您的应用程序入口文件,例如:

```json

{

"name": "my-nodejs-app",

"version": "1.0.0",

"main": "index.js"

}

```

在这里,`index.js` 是应用程序入口文件。

3. 打包你的 Node.js 项目:

在项目根目录下运行以下命令:

```bash

pkg -t node14-windows-x64 .

```

这里 `-t` 标志定义了要与之兼容的平台和 Node.js 版本。`node14-windows-x64` 指定了具体的目标平台和架构。你也可以添加更多目标平台如 `macos` 和 `linux`。详情请参见 `pkg` 文档。

打包完成后,项目目录中会生成一个名为 `my-nodejs-app.exe` 的可执行文件。

您现在可以在没有 Node.js 环境的 Windows 电脑上运行这个 `.exe` 文件。请注意,某些关联的资源(如数据库配置文件)可能需要手动与 `.exe` 文件一起分发。

总结

通过使用 `pkg` 工具,我们可以将 Node.js 项目打包成单个可执行的 `.exe` 文件,从而在没有 Node.js 环境的 Windows 电脑上运行。这为您的项目分发提供了便利,同时还简化了在目标设备上配置和运行项目的过程。