在本教程中,我们将学习如何将Node.js应用程序转换成可执行文件(.exe),使其更易于在没有Node.js环境的系统上进行分发和执行。为了实现这个目标,我们将使用一个名为`pkg`的第三方库,它简化了整个构建和打包过程。
**1. 准备Node.js应用程序**
首先,确保您已经安装好了Node.js。然后,为您的项目创建一个新文件夹。在文件夹中,使用以下命令初始化一个新的Node.js项目:
```
npm init -y
```
这将创建一个预填充的`package.json`文件。接下来,编写您的应用程序并将代码保存在`app.js`文件中。例如,一个简单的“Hello World”应用程序:
```javascript
// app.js
console.log("Hello World!");
```
**2. 安装pkg库**
使用以下命令安装`pkg`库:
```
npm install -g pkg
```
`-g`标志表示将库全局安装,使其在计算机的任何地方都可用。
**3. 使用pkg构建可执行文件**
运行以下命令将`app.js`Node.js应用程序转换成适用于Windows的可执行文件:
```
pkg app.js --targets node14-win-x64 -o app.exe
```
命令参数说明:
- `app.js`:Node.js应用程序的入口文件。
- `--targets`:目标平台和版本,此处指定了Node.js v14 和 Windows x64。
- `-o app.exe`:输出文件名为`app.exe`。
`pkg`支持多种目标平台,可以使用以下命令查看可用的目标平台:
```
pkg -h
```
根据需要,您可以修改命令以构建适用于其他平台(如macOS、Linux)的可执行文件。
**4. 运行可执行文件**
构建完成后,您将在项目目录中看到生成的`app.exe`文件。双击或在命令行中运行此文件,您将看到输出:"Hello World!"。
现在,您已经成功地将Node.js应用程序转换成了可执行文件。可以在没有Node.js环境的系统上分发和运行它。
请注意,生成的可执行文件可能较大,因为它包含了运行应用程序所需的整个Node.js运行时。而且,随着您的应用功能的扩展,所需的外部库也可能包含在生成的exe文件中。
您可以进一步设置`pkg`,通过配置`package.json`文件来优化生成的可执行文件,例如排除不必要的文件。您可以在`pkg`官方文档(https://github.com/vercel/pkg)中找到更多关于这些配置的信息。