当前位置:网站首页>yarn的安装及使用教程
yarn的安装及使用教程
2022-07-30 14:55:00 【segegefe】
目录
一、引言
之前出过一篇关于 用 npm 创建 react 项目的介绍与使用教程,本文在此介绍并对比一下 yarn 的使用。
yarn 是由 Facebook、Google、Exponent 和 Tilde 联合推出了一个新的 JS 包管理工具,yarn 是为了弥补 npm 的一些缺陷而出现的。
二、同为包管理工具 npm和yarn的区别
1、并行安装:yarn安装包会同时执行多个任务,npm 需等待上一个任务安装完成才能运行下一个任务
2、离线模式:如果你已经安装过一个包,用 yarn 再次安装会从缓存中获取,而 npm 会从网络下载
3、版本锁定:yarn 默认有一个 yarn.lock 文件锁定版本,保证环境统一,而 npm 默认从网络下载最新的最稳定的,版本锁定可以解决包之间版本不兼容问题,npm 也可以通过命令实现版本锁定
4、更简洁的输出:yarn 安装包时输出的信息较少,npm 输出信息冗余
三、yarn的安装
1. nodejs下载安装:
在node.js 官网里推荐选择 LTS (长期支持)版本,可在命令行用node -v 查看node的安装版本。顺便npm -v
查看npm的版本号。
2. yarn的安装并查看版本:
npm install -g yarn
yarn --version
四、总结
npm存在的一些不足:
npm install
下载速度慢,即使是重新 install 时速度依旧慢同一个项目,安装的无法保持一致性。原因是因为 package.json 文件中版本号的特点导致在安装的时候代表不同的含义。
使用 npm 安装多个 js 包时,包会在同一时间下载和安装。安装过程中,其中一个包抛出了一个异常,但 npm 会继续安装其他包,所以错误信息就会在一大堆提示信息中丢失掉,以至于直到执行前,都不会发现实际发生的错误。
Yarn的优点:
- 安装速度快 (服务器速度快 , 并且是并行下载)
- 版本锁定,安装版本统一
- 缓存机制,如果之前已经安装过一个软件包,用Yarn再次安装时之间从缓存中获取,就不用像npm那样再从网络下载了
- 输出简洁并且多注册来源处理。安装包时,直观地打印出必要的信息;不管包被不同的库间接关联引用多少次,只会从一个注册来源去装,防止出现混乱不一致。
npm 与 yarn 常用命令对比
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
猜你喜欢
面试何惧调优!腾讯技术官私藏的性能优化方案手册,原理实战齐全
【云原生】服务行业案例-不可预测的并发场景解决方案
4 senior experts share the insider architecture design and implementation principles of Flink technology with years of experience in large factories
Extremely Knowing v2 Analysis
DDS Arbitrary Waveform Output Based on FPGA
Flink本地UI运行
ISELED---the new choice of ambient lighting scheme
Huawei issues another summoning order for "Genius Boys"!He, who had given up an annual salary of 3.6 million, also made his debut
后浪来袭!阿里产出“第二代”容器技术手册及脑图,这也太香了吧
Memory-mapped, bit-band operations
随机推荐
Store Limit 使用文档
Packages - Notes
(科普文)什么是碎片化NFT(Fractional NFT)
MySql error: SqlError(Unable to execute query", "Can't create/write to file OS errno 2 - No such file...
B+树索引页大小是如何确定的?
Installing and Uninstalling MySQL on Mac
JVM性能调优
Local Transactions vs Distributed Transactions
【云原生】服务行业案例-不可预测的并发场景解决方案
[In-depth study of 4G/5G/6G topic-46]: 5G Link Adaption Link Adaption-2-Common Abbreviations
数字量输入模块io
Office Automation | Office Software and Edraw MindMaster Shortcuts
SQL 优化这么做就对了!
HTTP缓存小结
转换OTU表和序列文件为PICRUST2需要的格式
后浪来袭!阿里产出“第二代”容器技术手册及脑图,这也太香了吧
Go to Tencent for an interview and let people turn left directly: I don't know idempotency!
华为云重磅发布开源软件治理服务——软件成分分析
Flink实时仓库-DWS层(状态编程,windowall的使用,数据保存到clickhouse)模板代码
极验深知v2分析