使用 NCC 和 PKG 打包 Node.js 项目为可执行文件(Linux ,macOS,Windows)

🎬 江城开朗的豌豆个人主页

🔥 个人专栏 :《 VUE 》 《 javaScript 》

📝个人网站 :《 江城开朗的豌豆🫛 》

⛺️ 生活的理想,就是为了理想的生活 !

目录

[📘 文章引言](#📘 文章引言)

[步骤 1:准备你的 Node.js 项目](#步骤 1:准备你的 Node.js 项目)

[步骤 2:安装 NCC 和 PKG](#步骤 2:安装 NCC 和 PKG)

[步骤 3:使用 NCC 编译你的项目](#步骤 3:使用 NCC 编译你的项目)

[步骤 4:使用 PKG 打包应用](#步骤 4:使用 PKG 打包应用)

[步骤 6:运行可执行文件](#步骤 6:运行可执行文件)

[⭐ 写在最后](#⭐ 写在最后)



📘 文章引言

在这篇文章中,我们将学习如何使用 nccpkg 将 Node.js 项目打包成一个可执行文件,这样你可以轻松地分发和运行你的应用程序。

步骤 1:准备你的 Node.js 项目

确保你有一个已创建的 Node.js 项目。如果还没有,可以通过以下命令创建一个新的项目:

javascript 复制代码
mkdir my-node-app
cd my-node-app
npm init -y

然后,安装所需的依赖:

java 复制代码
npm install express

创建一个简单的 index.js 文件:

javascript 复制代码
// index.js
const express = require('express');
const app = express();
const port = 3000;

app.get('/', (req, res) => {
    res.send('Hello World!');
});

app.listen(port, () => {
    console.log(`App listening at http://localhost:${port}`);
});

步骤 2:安装 NCC 和 PKG

javascript 复制代码
npm install -g @vercel/ncc

npm install -g pkg 

步骤 3:使用 NCC 编译你的项目

html 复制代码
ncc build index.js -m -o dist

步骤 4:使用 PKG 打包应用

cpp 复制代码
 pkg dist/index.js

步骤 6:运行可执行文件

cpp 复制代码
./my-node-app   # Linux 和 macOS
my-node-app.exe # Windows

⭐ 写在最后

请大家不吝赐教,在下方评论或者私信我,十分感谢🙏🙏🙏.

✅ 认为我某个部分的设计过于繁琐,有更加简单或者更高逼格的封装方式

✅ 认为我部分代码过于老旧,可以提供新的API或最新语法

✅ 对于文章中部分内容不理解

✅ 解答我文章中一些疑问

✅ 认为某些交互,功能需要优化,发现BUG

✅ 想要添加新功能,对于整体的设计,外观有更好的建议

最后感谢各位的耐心观看,既然都到这了,点个 👍赞再走吧!

相关推荐
你不讲 wood2 小时前
使用 Axios 上传大文件分片上传
开发语言·前端·javascript·node.js·html·html5
tryCbest3 小时前
Nodejs安装配置及创建vue项目
vue.js·node.js
Luckyfif5 小时前
Webpack 是什么? 解决了什么问题? 核心流程是什么?
前端·webpack·node.js
熊的猫7 小时前
如何封装一个可取消的 HTTP 请求?
前端·javascript·vue.js·网络协议·http·webpack·node.js
黑金IT10 小时前
为什么使用Node.js爬虫更优
javascript·爬虫·node.js
API开发20 小时前
APISQL企业版离线部署教程
sql·node.js·api·restful·graphql·apisql
前端小垃圾(找工作真难呐)1 天前
将项目从 Webpack 到 Vite 迁移的步骤
前端·webpack·node.js
黑金IT1 天前
Node.js与Python的交互:使用node-pyrunner模块
开发语言·python·node.js·交互
Fan_web1 天前
Node.js——初识Node.js
开发语言·前端·node.js
黑金IT2 天前
在浏览器和Node.js环境中使用Puppeteer的Rollup与Webpack打包指南
前端·webpack·node.js·puppeteer·浏览器自动化