[Node]yarn介绍、安装与常用命令 2024最新出炉!

介绍

Yarn 是一个由 Facebook 开发的开源的包管理工具,用于 JavaScript 应用程序的依赖管理。它旨在解决 npm(Node Package Manager)在处理依赖关系时的速度和安全性问题。Yarn 提供了如下特性:

  1. 速度:Yarn 通过缓存已下载的包来提高重复安装的速度,并并行化下载操作以利用系统资源,进一步加快安装速度。
  2. 安全性:在安装任何包之前,Yarn 会验证包的完整性,确保没有人在传输过程中篡改了包内容。
  3. 确定性:Yarn 使用一个详细的锁文件(yarn.lock),确保在不同的系统和环境中,依赖关系的安装方式是一致的。
  4. 依赖关系树扁平化:Yarn 支持扁平化的依赖树,使得依赖关系更加清晰,易于管理。
    Yarn 的安装和使用流程通常如下:
  • 安装 Yarn:通过全局命令 npm install yarn -g 在系统上安装 Yarn。
  • 配置 Yarn:如果需要,可以配置 Yarn 使用特定的镜像源,如淘宝镜像 https://registry.npm.taobao.org,以加速下载。
  • 初始化项目:在项目根目录下运行 yarn init 来创建 package.json 文件,这是项目的配置文件。
  • 添加依赖:使用 yarn add packageName 命令来添加新的依赖包。
  • 安装依赖:运行 yarn install 来安装 package.json 中列出的所有依赖。
  • 更新依赖:可以使用 yarn upgrade packageName 来更新特定的依赖包。
  • 列出依赖:通过 yarn list 命令来查看已安装的依赖包。
    与 npm 相比,Yarn 提供了更为严格的工作流和额外的安全性保证,但它完全兼容 npm 的命令和包格式,使得开发者可以无缝切换到 Yarn。在现代的前端开发中,Yarn 已经成为流行的依赖管理工具之一。

安装与常用命令

好的,以下是详细的安装步骤:

  1. 安装 Node.js:首先,确保您的系统上已安装 Node.js。Yarn 需要 Node.js 来运行,因此,如果没有安装 Node.js,请先从 Node.js 官网 下载并安装。
  2. 安装 Yarn:一旦 Node.js 安装完毕,您可以使用 npm 来安装 Yarn。在命令行中运行以下命令:
    npm install -g yarn
    
    这个命令会全局安装 Yarn,使得您可以在任何地方使用 Yarn 命令。
  3. 验证安装:安装完成后,您可以通过运行以下命令来验证 Yarn 是否安装成功:
    yarn --version
    
    如果安装成功,这个命令将显示 Yarn 的版本号。
  4. 配置 Yarn(可选):如果您需要更改 Yarn 的默认配置,例如,使用特定的镜像源,您可以修改 .yarnrc 配置文件。例如,要将 Yarn 配置为使用淘宝镜像,您可以运行:
    yarn config set registry https://registry.npm.taobao.org
    
  5. 初始化项目:在您的新项目目录中,运行 yarn init 命令。这将创建一个 package.json 文件,该文件将记录您的项目依赖。
  6. 添加依赖:如果您想添加一个新的依赖包,可以使用:
    yarn add packageName
    
    这个命令会将指定的包添加到您的 package.json 文件中,并自动安装。
  7. 安装依赖:要安装项目依赖,运行:
    yarn install
    
    这个命令会根据 package.json 中的依赖列表来安装所有必要的包。
  8. 更新依赖:如果您需要更新一个依赖包,可以使用:
    yarn upgrade packageName
    
  9. 列出依赖:要查看所有已安装的依赖包,运行:
    yarn list
    
  10. 其他 Yarn 命令:Yarn 提供了许多其他命令来管理依赖,如 yarn remove 来移除一个依赖包,yarn config list 来查看所有配置项等。
    以上就是 Yarn 的基本安装和使用步骤。在实际使用中,您可能还会遇到其他具体情况,可以查阅 Yarn 的官方文档或社区提供的教程来获取更多帮助。

异常

yarn --version
'yarn' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

出现这个错误表明 Yarn 可能没有正确安装。请按照以下步骤检查和重新安装 Yarn:

  1. 检查 Node.js 安装
    确保您的系统上已经安装了 Node.js。您可以通过在命令行中运行 node --version 来验证。如果这个命令返回了 Node.js 的版本号,那么 Node.js 已经安装正确。
  2. 重新安装 Yarn
    如果 Node.js 已经安装,但是 Yarn 没有安装成功,您可以尝试重新安装 Yarn。在命令行中运行以下命令:
    npm uninstall -g yarn
    
    这个命令会卸载已安装的 Yarn。卸载完成后,再次运行以下命令来重新安装 Yarn:
    npm install -g yarn
    
  3. 验证 Yarn 安装
    安装完成后,再次运行 yarn --version 来验证 Yarn 是否已经正确安装。如果这个命令返回了 Yarn 的版本号,那么 Yarn 已经安装成功。
  4. 检查权限问题
    如果您在安装 Yarn 时遇到权限问题,特别是在 Unix-like 系统中,您可能需要使用 sudo 来安装 Yarn:
    sudo npm install -g yarn
    
  5. 检查环境变量
    确保您的 PATH 环境变量中包含了 Node.js 和 npm 的安装路径。这样您才能在命令行中全局访问 npm 和 Yarn 命令。
    如果以上步骤都无法解决问题,可能需要更详细的错误信息来进一步诊断问题。您可以尝试在命令行中运行 npm install -g yarn,看看是否有更详细的错误信息。
    添加NODE_HOME
    在这里插入图片描述
    添加 node_global
    在这里插入图片描述
    验证:
C:\wsw>yarn -v
1.22.21

安装yarn+环境配置

1,全局安装yarn:  npm install -g yarn2,查看版本: yarn -v3,全局安装目录配置: yarn config set global-folder “存放地址\yarn_global”4,全局缓存目录: yarn config set cache-folder “存放地址\yarn_cache”5,查看yarn的所有配置: yarn config list6,查看当前yarn的bin的位置: yarn global bin7,查看当前yarn的全局安装位置: yarn global dir8,环境配置:此电脑-属性-高级系统(找不到就搜索)-高级-环境变量-系统变量-找到path编辑-新建-把路径复制进去,一直复制到bin-确定就成功啦

NPM与YARN关系对照表

npm (v5)Yarn
npm installyarn install
(N/A)yarn add --flat
(N/A)yarn add --har
npm install --no-package-lockyarn add --no-lockfile
(N/A)yarn add --pure-lockfile
npm install [package] --saveyarn add [package]
npm install [package] --save-devyarn add [package] --dev
(N/A)yarn add [package] --peer
npm install [package] --save-optionalyarn add [package] --optional
npm install [package] --save-exactyarn add [package] --exact
(N/A)yarn add [package] --tilde
npm install [package] --globalyarn global add [package]
npm update --globalyarn global upgrade
npm rebuildyarn add --force
npm uninstall [package]yarn remove [package]
npm cache cleanyarn cache clean [package]
rm -rf node_modules && npm installyarn upgrade
npm version majoryarn version --major
npm version minoryarn version --minor
npm version patchyarn version --patch

refer:
https://blog.csdn.net/moshowgame/article/details/103358313

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/631174.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

系统架构的演变:从单体到微服务的旅程

文章目录 前言一、单体架构简图 二、垂直架构简图 三、水平架构简图 四、面向服务架构(SOA)简图 五、微服务架构简图 总结 前言 随着信息技术的快速发展,系统架构也在不断演变。从早期的单体架构到现代的微服务架构,每一次的变革都…

mac PyCharm 上传文件到远程服务器+远程服务器下载到本地

1 部署配置 选择SFTP name:test6 输入ssh账号和密码。保存密码和30s心跳。 2 目录映射 Local path(本地mac机器):/Users/clevercode/PycharmProjects/test6 Root path(远程服务机器):/home/…

【汇编】 13.3 对int iret和栈的深入理解

书中示例 assume cs:codecode segment start:mov ax,csmov ds,axmov si,offset lpmov ax,0mov es,axmov di,200hmov cx,offset end0-offset lpcldrep movsb ;lp到end0的指令传送到0:200处mov ax,0mov es,axmov word ptr es:[7ch*4],200hmov word ptr es:[7ch*42],0 ;设置7c表项…

Kafka-消费者-Consumer Group Rebalance设计

在同一个Consumer Group中,同一个Topic的不同分区会分配给不同的消费者进行消费,那么为消费者分配分区的操作是在Kafka服务端完成的吗?分区是如何进行分配呢?下面来分析Rebalance操作的原理。 方案一 Kafka最开始的解决方案是通过ZooKeeper的Watcher…

dubbo项目发布时Destroyed异常分析

1、问题现象 在发布项目时,elk有打印use dubbo version 2.6.2 is DESTROYED, can not be invoked any more!相关的报错日志,来提示dubbo消费者调用生产者时,生产者服务已经DESTROYED。 ChatGpt可知: 2、问题溯源 com.alibaba.dub…

序列到序列模型

一.序列到序列模型的简介 序列到序列(Sequence-to-Sequence,Seq2Seq)模型是一类用于处理序列数据的深度学习模型。该模型最初被设计用于机器翻译,但后来在各种自然语言处理和其他领域的任务中得到了广泛应用。 Seq2Seq模型的核…

【软件测试学习笔记6】Linux常用命令

格式 command [-options] [parameter] command 表示的是命令的名称 []表示是可选的,可有可无 [-options]:表示的是命令的选项,可有一个或多个,也可以没有 [parameter]:表示命令的参数,可以有一个或多…

VLAN区域间路由详解

LAN局域网 WAN 广域网 WLAN无线局域网 VLAN:虚拟局域网 交换机和路由器,协同工作后,将原来的一个广播域,切分为多个,节省硬件成本; 配置思路: 交换机上创建vlan交换机上的各个接口划分到对应的vlan中 T…

尚无忧【无人共享空间 saas 系统源码】无人共享棋牌室系统源码共享自习室系统源码,共享茶室系统源码

可saas多开,非常方便,大大降低了上线成本 UNIAPPthinkphpmysql 独立开源! 1、定位功能:可定位附近是否有店 2、能通过关键字搜索现有的店铺 3、个性轮播图展示,系统公告消息提醒 4、个性化功能展示,智能…

LED车灯电源解决方案SCT8162x、SCT2464Q、SCT71403Q、SCT71405Q、SCT53600等

随着LED封装技术的成熟和成本的下降,LED车灯渗透率迅速提升。车灯控制技术不断向节能化、智能化和个性化方向发展。ADB大灯配置门槛下探,像素数据急剧增加,LED 数量不断增加,陆续有智能车灯达到百万级像素,且动画效果需…

【算法小记】深度学习——循环神经网络相关原理与RNN、LSTM算法的使用

文中程序以Tensorflow-2.6.0为例 部分概念包含笔者个人理解,如有遗漏或错误,欢迎评论或私信指正。 卷积神经网络在图像领域取得了良好的效果,卷积核凭借优秀的特征提取能力通过深层的卷积操作可是实现对矩形张量的复杂计算处理。但是生活中除…

前端——框架——Vue

提示: 本文只是从宏观角度简要地梳理一遍vue3,不至于说学得乱七八糟、一头雾水、不知南北,如果要上手写代码、撸细节,可以根据文中的关键词去查找资料 简问简答: vue.js是指vue3还是vue2? Vue.js通常指的是…

Rust 错误处理(下)

目录 1、用 Result 处理可恢复的错误 1.1 传播错误的简写:? 运算符 1.2 哪里可以使用 ? 运算符 2、要不要 panic! 2.1 示例、代码原型和测试都非常适合 panic 2.2 当我们比编译器知道更多的情况 2.3 错误处理指导原则 2.4 创建自定义类型进行有效性验证 …

uni-app 经验分享,从入门到离职(年度实战总结:经验篇)——上传图片以及小程序隐私保护指引设置

文章目录 🔥年度征文📋前言⏬关于专栏 🎯关于上传图片需求🎯前置知识点和示例代码🧩uni.chooseImage()🧩uni.chooseMedia()📌uni.chooseImage() 与 uni.chooseMedia() 🧩uni.chooseF…

【playwright】新一代自动化测试神器playwright+python系列课程14_playwright网页相关操作_获取网页标题和URL

Playwright 网页操作_获取网页标题和URL 在做web自动化测试时,脚本执行完成后需要进行断言,判断脚本执行是否存在问题。在断言时通常选择一些页面上的信息或者页面上元素的状态来断言,使用网页标题或url来断言就是常见的断言方式&#xff0c…

Java-NIO篇章(2)——Buffer缓冲区详解

Buffer类简介 Buffer类是一个抽象类,对应于Java的主要数据类型,在NIO中有8种缓冲区类,分别如下: ByteBuffer、 CharBuffer、 DoubleBuffer、 FloatBuffer、 IntBuffer、 LongBuffer、 ShortBuffer、MappedByteBuffer。 本文以它的…

Zabbix分布式监控系统概述、部署、自定义监控项、邮件告警

目录 前言 (一)业务架构 (二)运维架构 一、Zabbix分布式监控平台 (一)Zabbix概述 (二)Zabbix监控原理 (三)Zabbix 6.0 新特性 1. Zabbix server高可用…

10- OpenCV:基本阈值操作(Threshold)

目录 1、图像阈值 2、阈值类型 3、代码演示 1、图像阈值 (1)图像阈值(threshold)含义:是将图像中的像素值划分为不同类别的一种处理方法。通过设定一个特定的阈值,将像素值与阈值进行比较,根…

BEESCMS靶场小记

MIME类型的验证 image/GIF可通过 这个靶场有两个小坑: 1.缩略图勾选则php文件不执行或执行出错 2.要从上传文件管理位置获取图片链接(这是原图上传位置);文件上传点中显示图片应该是通过二次复制过去的;被强行改成了…

路由器的妙用:使用无线路由器无线桥接模式充当电脑的无线网卡

文章目录 需求说明第一步:重置、连接路由器第二步:设置无线桥接模式第三步:电脑连接路由器上网 需求说明 在原路由无线覆盖的范围内,使用无网卡台式和其他主机,并且有闲置的无线路由器或者网线太短,可以使…