node.js 包管理工具介绍 (npm与Yarn详细说明)

一、什么是包?

包(package)代表了一组特定功能的源码集合

二、什么是包管理工具?

也就是管理包的应用软件,可以对包进行下载、更新、删除、上传等操作。借助包管理工具,可以快速开发项目提升开发效率。包管理工具是一个通用概念,很多编程工具都有包管理工具,它极为重要

三、常用的包管理工具?

npm、yarn、cnpm...

其中Node.js 的包管理工具主要是 npm(Node Package Manager)和 yarn。这些工具使得开发者能够轻松地安装、更新、删除和管理 Node.js 项目中的依赖包。

(3-1) npm

1》介绍:

npm 是 Node.js 默认的包管理工具,随着 Node.js 的安装而自动安装。它提供了一个庞大的公共仓库(registry),其中包含了成千上万的开源 Node.js 包。

2》主要功能和操作:

安装依赖:使用 npm install <package-name> 命令可以安装一个特定的包。

安装所有依赖:在项目的根目录下运行 npm install 命令,会根据 package.json 文件中的依赖列表安装所有必要的包。

更新依赖:使用 npm update <package-name> 命令可以更新一个特定的包,而 npm update 命令会更新所有已安装的包。

删除依赖:使用 npm uninstall <package-name> 命令可以删除一个包。

查看已安装的包:使用 npm list 命令可以查看当前项目中已安装的包列表。

package.json 文件:

npm 的一个重要概念是 package.json 文件。这个文件描述了项目的元数据和依赖信息。通过编辑这个文件,你可以指定项目的名称、版本、描述、作者、依赖等信息。

(3-2) Yarn

1》介绍:

Yarn 是另一个流行的 Node.js 包管理工具,由 Facebook 开发。它的目标是解决 npm 在一些场景中的问题,比如性能和安全问题。

2》主要功能和操作:

安装依赖:使用 yarn add <package-name> 命令可以安装一个特定的包。

安装所有依赖:在项目的根目录下运行 yarn install 命令,会根据 package.json 文件中的依赖列表安装所有必要的包。

更新依赖:使用 yarn upgrade <package-name> 命令可以更新一个特定的包,而 yarn upgrade 命令会更新所有已安装的包。

删除依赖:使用 yarn remove <package-name> 命令可以删除一个包。

查看已安装的包:使用 yarn list 命令可以查看当前项目中已安装的包列表。

Yarn 也有一个名为 yarn.lock 的文件,它类似于 npm 的 package-lock.json 文件,用于锁定依赖的版本,确保在不同环境中安装相同版本的依赖。

(3-3)npm和yarn总结:

npm 和 Yarn 都是功能强大的 Node.js 包管理工具,它们使得开发者能够轻松地管理项目的依赖。npm 作为 Node.js 的默认包管理工具,使用广泛,但 Yarn 在一些方面提供了更好的性能和安全性。选择哪个工具取决于你的具体需求和偏好。

四、npm的安装

npm是Node.js默认的包管理工具。

Node.js在安装时会自动安装npm。如果已装好node.js可以直接使用npm。

npm是否安装检测方法:打开命令提示符,输入npm -v来查看版本号。若版本号显示则安装成功

相关推荐
天下代码客14 小时前
使用electronc框架调用dll动态链接库流程和避坑
前端·javascript·vue.js·electron·node.js
weixin1997010801614 小时前
【性能提升300%】仿1688首页的Webpack优化全记录
前端·webpack·node.js
不倒翁玩偶16 小时前
npm : 无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
前端·npm·node.js
一心赚狗粮的宇叔17 小时前
03.Node.js依赖包补充说明及React&Node.Js项目
前端·react.js·node.js
-嘟囔着拯救世界-18 小时前
【2026 最新版】OpenAI 祭出王炸 GPT-5.3-Codex!Win11 + VSCode 部署保姆级教程
vscode·gpt·chatgpt·node.js·node·codex·gpt5
全栈前端老曹1 天前
【MongoDB】Node.js 集成 —— Mongoose ORM、Schema 设计、Model 操作
前端·javascript·数据库·mongodb·node.js·nosql·全栈
Hello.Reader1 天前
Flink 文件系统通用配置默认文件系统与连接数限制实战
vue.js·flink·npm
行者无疆_ty1 天前
什么是Node.js,跟OpenCode/OpenClaw有什么关系?
人工智能·node.js·openclaw
-凌凌漆-1 天前
【npm】npm的-D选项介绍
前端·npm·node.js
lucky67071 天前
Windows 上彻底卸载 Node.js
windows·node.js