基于 Node 打包可执行文件工具 Pkg 使用心得分享 基于 Node 打包可执行文件工具 Pkg 使用心得分享是指使用 Node.js 项目打包成可执行文件的方法,使用 Pkg 工具可以将 Node.js 项目直接打包成 Windows 可执行文件(exe),不需要安装 Node.js,且无须修改项目中的任何代码。 使用 Pkg 工具的优点是可以将 Node.js 项目快速打包成可执行文件,无需安装 Node.js,且无须修改项目中的任何代码。此外,Pkg 工具还支持 FreeBSD、Linux、macOS、arm 系统等多种平台。 使用 Pkg 工具需要首先安装 Pkg,使用命令 `npm install -g pkg` 即可安装。然后,在项目目录下执行 `pkg entrance.js` 即可打包 Linux、macOS、win 三个平台的可执行文件,其中 `entrance.js` 是 Node.js 项目的入口文件。 如果只想打包 Windows 下的可执行文件,可以加上 `-t` 参数,例如 `pkg -t win entrance.js`。这将生成一个 Windows 可执行文件。 Pkg 工具还支持根据 `package.json` 配置进行打包,默认入口文件为 `bin` 指向的文件。例如,在 `package.json` 文件中添加以下配置: ```json { // 其他配置项 "bin": "service.js", // 入口文件 "pkg": { "scripts": [ "build//*.js" // 需要打包进来的其他 js 文件,可添加多个 ], "assets": [ "dist//*" // 静态文件的目录,可添加多个 ] } } ``` 然后,执行 `pkg .` 或 `pkg package.json` 即可自动按照 `package.json` 配置打包。 需要注意的是,静态文件需要在项目中将文件的引用换成 `path.join(__dirname, 'dist')` 的形式,否则可能会读取不到。 例如,使用 Vue-cli 建立项目,并使用 `npm run build` 将项目编译生成静态文件到 `dist` 目录下。然后,在项目目录下新建一个 `service.js` 文件,并添加以下代码: ```javascript const express = require('express'); const app = express(); const path = require('path'); app.use(express.static(path.join(__dirname, 'dist'))); var server = app.listen(8081, function() { var host = server.address().address; var port = server.address().port; console.log(`AIbuy agents server start successfully on http://${host}:${port}`); }); ``` 然后,执行 `node service.js` 启动服务器,访问 `http://localhost:8081/` 即可查看网站。 使用 Pkg 工具将 `service.js` 和 `dist` 目录打包成一个可执行文件,方便他人使用。安装 Pkg,然后修改 `package.json`,添加 `bin` 和 `pkg` 项: ```json { // 其他配置项 "bin": "service.js", // 指定入口文件 "pkg": { "assets": [ "dist//*" // 指定要打包的静态文件目录 ] } } ``` 然后,在项目目录下执行 `pkg -t win package.json`,完成后即生成一个可执行文件,双击启动即相当于执行 `node service.js`,然后浏览器里(`http://localhost:8081/`)就能访问打包好的项目了!也不需要提前安装 Node,给老板演示很方便!
- 粉丝: 3
- 资源: 899
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助