npm是什么东西

npm是Node.js的包管理器,用于管理和分享代码。安装Node.js后,npm会随之安装。基本使用包括安装、升级和管理依赖。yarn是Facebook等公司推出的替代npm的包管理工具,以其速度、版本一致性、简洁输出和多源处理等优点受到青睐。yarn通过lock文件确保每次安装的模块版本相同,提高可重复性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是npm

npm (全称Node PackageManager,即node包管理器)是Node.js默认的、以JavaScript编写的软件包管理系统npm来分享和使用代码已经成了前端的标配

npm 是 JavaScript 世界的包管理工具,并且是 Node.js 平台的默认包管理工具,也是世界上最大的软件注册表,里面包含超过600000 个 包的结构,能够使您轻松跟踪依赖项和版本。

npm的安装和使用

安装

npm是Node.js默认的软件包管理系统
安装完毕node后,会默认安装好npm。
npm本身也是基于Node.js开发的软件

下载Node地址: http://nodejs.cn

判断是否安装成功:
搜索框输入cdm,打开命令提示符
输入node -v,如果成功安装Node.js,会获取到相应的版本号
输入npm -v,会获取到npm的版本号

基本使用

在这里插入图片描述

yarn

yarn是什么?

"Yarn是由Facebook、Google、Exponent和Tilde联合推出了一个新的JS包管理工具,正如官方文档中写的, Yarn是为了弥补npm的一些缺陷而出现的。

yarn的基本使用

在这里插入图片描述

yarn的优点

  1. 速度快: npm要等上一个package安装完之后再安装下一个。yarn并行安装,多个package一起安装。如果之前安装过一个软件包,yarn再次安装时会从缓存中获取。npm需要从网络下载。
  1. 安装版本统一: yarn默认生成一个锁定文件lock。file记录了安装上的模块的版本号。每一次拉取项目的时候都是一样的模块版本。
  1. 更简洁的输出: npm 的输出信息比较冗长。在执行 npm install 的时候,命令行里会不断地打印出所有被安装上的依赖。相比之下,Yarn 简洁太多:默认情况下,结合了
    emoji直观且直接地打印出必要的信息,也提供了一些命令供开发者查询额外的安装信息。
  1. 多注册来源处理: 所有的依赖包,不管他被不同的库间接关联引用多少次,安装这个包时,只会从一个注册来源去装,要么是 npm 要么是 bower, 防止出现混乱不一致。
  1. 更好的语义化: yarn改变了一些npm命令的名称,比如 yarn add/remove,感觉上比 npm 原本的 install/uninstall 要更清晰。
### 解决 npm 无法下载包的方法 当遇到 `npm` 无法下载软件包的情况时,可能由多种因素引起。以下是几种常见的解决方案: #### 使用淘宝镜像源加速安装 有时官方 NPM 源的速度较慢或不稳定,可以切换到国内的镜像源来提高速度。通过命令行工具 cnpm 或者直接修改 `.npmrc` 文件中的 registry 地址为淘宝提供的公共镜像。 ```bash # 设置临时会话级别的registry地址 npm config set registry https://registry.npmmirror.com/ # 验证设置是否成功 npm get registry ``` #### 更新 Node.js 和 npm 版本 保持开发环境使用的 Node.js 及其配套的 npm 工具处于最新稳定版本有助于减少兼容性和性能方面的问题。对于不同项目需求不同的Node.js版本管理,推荐使用 nvm 来方便地管理和切换多个版本[^2]。 ```bash # 安装nvm脚本 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash # 加载nvm函数至当前shell session export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # 列出可安装的所有LTS版node列表 nvm ls-remote --lts # 安装指定版本号的node nvm install <version> # 将该版本设为默认版本 nvm alias default <version> ``` #### 清理缓存重试 偶尔本地缓存可能会损坏而导致依赖项获取失败,此时清理全局缓存再重新执行安装操作往往能解决问题。 ```bash # 强制清除所有缓存数据 npm cache clean --force # 删除node_modules目录以及package-lock.json文件后再次运行install指令 rm -rf node_modules package-lock.json npm install ``` #### DNS解析问题排查 确认系统的DNS服务器配置正确无误也很重要。可以通过编辑 `/etc/resolv.conf` 添加可靠的公共DNS服务提供商如Google(8.8.8.8) 或 Cloudflare(1.1.1.1)[^4]。 ```bash cd /etc sudo vi resolv.conf # 在文件内加入如下内容保存退出 nameserver 8.8.8.8 nameserver 1.1.1.1 ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值