yarn - 一个可能取代 npm 的新型包管理器 [Facebook 出品,附带中文使用教程]

简介: 仅仅一夜,却也是无数个日夜,FaceBook 开源了 yarn 这个新的 JavaScript 包管理工具,这个和 Exponent, Google, 以及 Tilde 合作完成的项目。官网 | Github Repoyarn出现的缘由 — 解决npm历史遗留的痛点


原文链接: blog.csdn.net

yarn


仅仅一夜,却也是无数个日夜,FaceBook 开源了 yarn 这个新的 JavaScript 包管理工具,

这个和 Exponent, Google, 以及 Tilde 合作完成的项目。

官网 | Github Repo

yarn出现的缘由 — 解决npm历史遗留的痛点


亮点


  1. 极致的快速—会缓存已经下载过的包,避免重复下载~~~这特性比npm好多了,不用每次都请求下载
  2. 安全 — 下载前会检查签名及包的完整性


  1. 可靠可确定性


  1. 网络优化 — 力求网络资源最大利用化,让资源下载完美队列执行,避免大量的无用请求,下载失败会自动重新请求,避免整个安装过程失败


  1. 扁平化模式 — 对于不匹配的依赖版本的包创立一个独立的包,避免创建重复的。


下载安装 — 支持多平台


因为他们的下载包基本都是放在Amazon上的,版本什么也会随时更新,我就不给出单独版本的下载链接了;


可以自行到下载页面下载,此处只是给出教程 —— 下载传送门


注意:命令行模式基本三平台一样


  1. window — 一直下一步下一步,现在安装目录什么的,然后打开cmd输入yarn --version就能看到版本号。。如图


  • 提供的.msi后缀格式的安装包,前提需要依赖nodejs(也就是说需要先安装nodejs)



  1. Linux — 提供了debian家族的apt-get包管理器安装的还有rhel家族的yum管理器安装的


  1. MacOS – 有两种安装模式,一种是下载脚本执行,一种下载压缩包解压。。。后者跟Linux下载编译包一个道理,这里还不需要编码,解压即可使用


  1. 在终端执行curl -o- -L https://yarnpkg.com/install.sh | bash ,下载脚本并且执行
  2. 同样在终端执行


cd /opt      
    wget https://yarnpkg.com/latest.tar.gz  
    tar zvxf yarn-*.tar.gz   
    复制代码


小科普: MacOS有BSD的血统,Linux类UNIX,两者都是类UNIX。。。所以会Linux的小伙伴搞MacOS感觉都差不多,都能速度上手,大同小异滴


使用教程


跟npm的用法非常类似,且待我细细到来~


三步走


  1. 项目下初始化 - 切到你的项目下,执行yarn init,会在根目录下生成一个package.json


  1. 添加依赖安装


  1. 开工


命令解释


  • yarn init#初始化package.json – 和npm一致



  • name : 项目名
  • version : 版本号
  • description : 项目描述
  • entry point : 入口文件
  • git repository: git项目链接地址
  • author : 作者
  • license : 协议


{
  "name": "yarn-demo",
  "version": "1.0.0",
  "description": "This is yarn-demo.",
  "main": "index.js",
  "repository": {
    "url": "....",
    "type": "git"
  },
  "author": "LinQunHe(CRPER)",
  "license": "MIT",
  "dependencies": {
    "jquery": "2.1.4"
  }
}


添加依赖


  • yarn add [package] — 添加包,会自动安装最新版本,注意会覆盖指定版本号!!!



  • yarn add [package]@[version] — 带版本号安装



  • yarn add [package]@[tag] — tag,是指代git上的推送的tag【no release!!】,看图



更新依赖


tips: 估计管理器还有些不完善,不能单独升级某个依赖。会提示error This command doesn’t require any arguments. — 意思就是该命令不需要任何参数【不带参数】


  • yarn upgrade [package] — 更新某个包
  • yarn upgrade [package]@[version] — 指定更新到某个版本
  • yarn upgrade [package]@[tag] — 指定更新版本到某个标签


以上不能使用, 唯一能用的是在项目下执行,yarn upgarde, 会遍历所有依赖,然后全部更新



移除依赖


  • yarn remove [package] — 移除某个包



在其他项目启动项目


类似npm,执行npm install;


yarn管理器支持两种安装所有依赖的命令:yarn 或者 yarn install

当然,还有一些其他不常用的命令,比如发布什么的,,具体可以看这里 —- 传送门


总结


yarn管理器有一个很重要的文件需要注意,就是yarn.lock,这个是用来依赖的正确性,快速可靠安装的;是执行cli的时候自动生成的,在项目的根目录下,需要保留!!!!不要编辑它,这是自动生成的


在其他电脑初始化,必须记得把package.jsonyarn.lock复制过去,简直就是秒下载【缓存机制】,如图;


目录
相关文章
|
23天前
|
缓存 资源调度 JavaScript
npx与npm的差异解析,以及包管理器yarn与Node版本管理工具nvm的使用方法详解
npx与npm的差异解析,以及包管理器yarn与Node版本管理工具nvm的使用方法详解
29 0
|
3月前
|
资源调度 关系型数据库 MySQL
【Flink on YARN + CDC 3.0】神操作!看完这篇教程,你也能成为数据流处理高手!从零开始,一步步教会你在Flink on YARN模式下如何配置Debezium CDC 3.0,让你的数据库变更数据瞬间飞起来!
【8月更文挑战第15天】随着Apache Flink的普及,企业广泛采用Flink on YARN部署流处理应用,高效利用集群资源。变更数据捕获(CDC)工具在现代数据栈中至关重要,能实时捕捉数据库变化并转发给下游系统处理。本文以Flink on YARN为例,介绍如何在Debezium CDC 3.0中配置MySQL连接器,实现数据流处理。首先确保YARN上已部署Flink集群,接着安装Debezium MySQL连接器并配置Kafka Connect。最后,创建Flink任务消费变更事件并提交任务到Flink集群。通过这些步骤,可以构建出从数据库变更到实时处理的无缝数据管道。
277 2
|
4月前
|
缓存 资源调度 前端开发
Yarn的安装及使用教程
Yarn的安装及使用教程
132 1
|
5月前
|
存储 缓存 资源调度
Yarn: 安装与使用教程
Yarn: 安装与使用教程
324 3
|
5月前
|
存储 缓存 资源调度
你真的知道 NPM、Yarn 与 PNPM 这三个前端包管理器之间的区别吗?
【6月更文挑战第9天】NPM、Yarn和PNPM是主流前端包管理器,各有特色。NPM生态庞大,易用但速度慢;Yarn速度快,依赖管理稳定;PNPM性能优异,节省磁盘空间。Yarn和PNPM在速度和确定性上胜出,NPM因广泛使用和丰富资源领先。开发者可根据项目需求和喜好选择,三者共同推动前端开发进步。
148 8
|
5月前
|
资源调度
npm yarn 启动报错【已解决】
npm yarn 启动报错【已解决】
58 2
|
5月前
|
存储 缓存 资源调度
npm、yarn与pnpm详解
npm、yarn与pnpm详解
129 0
|
6月前
|
存储 资源调度 JavaScript
pnpm、npm、yarn是什么?怎么选择?
pnpm、npm、yarn是什么?怎么选择?
217 2
|
5月前
|
缓存 资源调度 JavaScript
yarn安装和使用及与npm的区别
yarn安装和使用及与npm的区别
85 0
|
2月前
|
资源调度 分布式计算 Hadoop
YARN(Hadoop操作系统)的架构
本文详细解释了YARN(Hadoop操作系统)的架构,包括其主要组件如ResourceManager、NodeManager和ApplicationMaster的作用以及它们如何协同工作来管理Hadoop集群中的资源和调度作业。
114 3
YARN(Hadoop操作系统)的架构

推荐镜像

更多