一文浅析JS包管理工具:yarn

yarn  和 npm  一样也是 javascript  包管理工具,下面本篇文章就来带大家了解一下yarn包管理工具,希望对大家有所帮助!

一文浅析JS包管理工具:yarn

1. yarn简介

Yarnfacebook 发布的一款取代 npm 的包管理工具

速度超快 —— Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载。 同时利用并行下载以最大化资源利用率,因此安装速度更快超级安全 —— 在执行代码之前,Yarn 会通过算法校验每个安装包的完整性超级可靠 —— 使用详细、简洁的锁文件格式和明确的安装算法,Yarn 能够保证在不同系统上无差异的工作

2. yarn安装与更新

2-1 全局安装

通过 npm install -g 全局去安装 yarn 包管理工具,默认安装的版本是 yarn 1 版本

# 全局安装npm install -g yarn# 查看yran安装版本yarn --version# 显示命令列表yarn help

2-2 项目安装

在项目中需要使用 yarn 2,可以在项目更目录安装333

“Berry” 是 Yarn 2 发布序列的代号,同时也是我们的 代码仓库 的名称!

yarn set version berry

2-3 yarn更新

yarn 更新到最新版本,yarn 会从我们的网站下载最新的二进制文件,并将其安装在您的项目中

将项目中的包管理工具升级为 Yarn 2,此后如果需要对此 Yarn 2 进行升级,则可以使用 yarn set version latest 进行升级,否则仍是对 Yarn 1 进行操作

yarn set version latest

2-4 安装maste分支最新版

尝试最新的 master 代码分支

yarn set version from sources

可以使用 --branch 参数来指定要安装特定的分支节点

yarn set version from sources --branch 1211

3. 镜像管理

3-1 安装淘宝镜像

修改国内镜像后可以加快软件包安装速度

查看当前使用的镜像

yarn config get registry

添加 yarn 的淘宝镜像

yarn config set registry https://registry.npm.taobao.org -g# 恢复默认yarn config set registry http://registry.npmjs.org/# 安装sassyarn config set sass_binary_site https://npm.taobao.org/mirrors/node-sass/

3-2 yrm镜像管理

yrm 是管理镜像的工具,可以列出可以使用的镜像,非常方便

安装 yrm

npm install -g yrm

列出可以使用的镜像

yrm ls

使用淘宝镜像

yrm use taobao

测试镜像速度

yrm test taobao

4. yarn使用

4-1 初始化项目

yarn init 用来初始化生成一个新的 package.json 文件

D:My Study8-Node.js2-yarn>yarn inityarn init v1.22.19question name (02-yarn): yarn-initquestion version (1.0.0):question description: 初始化配置question entry point (index.js):question repository url:question author (jsx  (https://github.com/xiaofeilalala)):question license (MIT):question private:success Saved package.jsonDone in 29.32s.
{  "name": "yarn-init",  "version": "1.0.0",  "description": "初始化配置",  "main": "index.js",  "author": "jsx  (https://github.com/xiaofeilalala)",  "license": "MIT"}

4-2 设置配置项

通过 yarn config 去设置显示删除配置项

yarn config list // 显示所有配置项yarn config get  //显示某配置项yarn config delete  //删除某配置项yarn config set   [-g|--global] //设置配置项

4-3 安装依赖

安装所有依赖

yarn install

强制重新下载所有包

yarn install --force

添加依赖项,会自动更新到 package.jsonyarn.lock 文件中

# 安装最新版本yarn add [packageName] # 安装指定版本yarn add [packageName]@# 安装指定tag版本 beta,next或者latestyarn add [packageName]@

安装包的精确版本,例如: yarn add foo@1.2.3 会接受 1.9.1 版本,但是 yarn add foo@1.2.3 --exact 只能安装指定 1.2.3 版本

 yarn add [packageName]@ --exact yarn add [packageName]@ -E

安装包的次要版本里的最新版,例如:yarn add foo@1.2.3 --title 会接受 1.2.9,但不接受 1.3.0

yarn add [packageName]@ --titleyarn add [packageName]@ -T

4-4 不同依赖类

在一个 Node.js 项目中,package.json 几乎是一个必须的文件,它的主要作用就是管理项目中所使用到的外部依赖包,同时它也是 npm 命令的入口文件

LuckyCola工具库 LuckyCola工具库

LuckyCola工具库是您工作学习的智能助手,提供一系列AI驱动的工具,旨在为您的生活带来便利与高效。

LuckyCola工具库 19 查看详情 LuckyCola工具库

npm 目前支持以下几类依赖包管理:

dependenciesdevDependenciespeerDependenciesoptionalDependenciesbundledDependencies / bundleDependencies

dependencies

应用依赖,或者叫做业务依赖,这是我们最常用的依赖包管理对象!它用于指定应用依赖的外部包,这些依赖是应用发布后正常执行时所需要的,但不包含测试时或者本地打包时所使用的包。

devDependencies

开发环境依赖,仅次于 dependencies 的使用频率!它的对象定义和 dependencies 一样,只不过它里面的包只用于开发环境,不用于生产环境,这些包通常是单元测试或者打包工具等,例如gulp, grunt, webpack, moca, coffee

peerDependencies

同等依赖,或者叫同伴依赖,用于指定当前包(也就是你写的包)兼容的宿主版本。如何理解呢? 试想一下,我们编写一个 gulp 的插件,而 gulp 却有多个主版本,我们只想兼容最新的版本,此时就可以用同等依赖(peerDependencies)来指定

optionalDependencies

可选依赖,如果有一些依赖包即使安装失败,项目仍然能够运行或者希望npm继续运行,就可以使用 optionalDependencies。另外optionalDependencies 会覆盖 dependencies 中的同名依赖包,所以不要在两个地方都写

bundledDependencies / bundleDependencies

打包依赖,bundledDependencies 是一个包含依赖包名的数组对象,在发布时会将这个对象中的包打包到最终的发布包里

不指定依赖类型默认安装到 dependencies 里,你也可以指定依赖类型

# 添加到 devDependencies 依赖项yarn add [package]@[version] --devyarn add [package]@[version] -D# 添加到 peerDependencies 依赖项yarn add [package]@[version] --peeryarn add [package]@[version] -P# 添加到 optionalDependencies 依赖项yarn add [package]@[version] --optionalyarn add [package]@[version] -O

4-5 升级依赖

根据需要将安装好的依赖包进行升级

# 更新所有软件包yarn up# 升级到最新版本yarn up [packageName]# 升级到指定版本yarn up [packageName]@[version]# 升级到指定tag版本yarn up [packageName]@[tag]

4-6 删除依赖

从项目中删除依赖项 dependencies,会自动更新 package.jsonyarn.lock

yarn remove [packageName]

删除 yarn 全局软件包

yarn remove -g [packageName]

4-7 发布模块

yarn publish 用于将当前模块发布到 http://npmjs.com

如果已经注册过,就使用下面的命令登录

yarn login

退出登录 npm 仓库

yarn logout

登录以后,就可以使用 npm publish 命令发布

yarn publish

撤销发布的模块 npm unpublish

# 删除某个版本yarn unpublish [packageName]@  # 删除整个npm市场的包yarn unpublish [packageName] --force

4-8 运行命令

yarn run 用来执行在 package.jsonscripts 属性下定义的脚本

// package.json{  "scripts": {  "dev": "node app.js",  "start": "node app.js"  }}

yarnnpm 一样 可以有 yarn startyarn test 两个简写的运行脚本方式

# yarn 执行 dev 对应的脚本 node app.jsyarn run dev npm runyarn start # yarnnpm start # npm

4-9 缓存控制

列出已缓存的每个包

yarn cache list

全局缓存位置

yarn cache dir

清除缓存

yarn cache clean

4-10 模块信息

yarn info 可以用来查看某个模块的最新版本信息

yarn info [packageName] # yarn npm info [packageName] # npmyarn info [packageName] --json # 输出 json 格式npm info [packageName]  --json # npmyarn info [packageName] readme # 输出 README 部分npm info [packageName] readme

更多编程相关知识,请访问:编程视频!!

以上就是一文浅析JS包管理工具:yarn的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/546451.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月9日 17:56:24
下一篇 2025年11月9日 17:57:25

相关推荐

  • javascript_包管理工具比较

    目前主流JavaScript包管理工具为npm、yarn和pnpm。npm生态成熟,开箱即用;yarn安装快,依赖一致性强;pnpm磁盘效率高,适合大型项目。选择需根据项目需求与团队习惯,当前趋势倾向于pnpm。 JavaScript 的包管理工具在现代前端开发中扮演着核心角色,帮助开发者管理项目依…

    2025年12月21日
    000
  • Python中怎样管理依赖包?

    在python中,管理依赖包可以通过pip和虚拟环境(如venv)来实现。1)使用pip安装、升级和卸载包,并通过requirements.txt文件管理版本。2)创建和激活虚拟环境以隔离项目依赖,避免冲突。 在Python中管理依赖包是一项关键技能,尤其当你需要确保项目在不同环境中都能顺利运行时。…

    2025年12月14日
    000
  • PHP如何调用Yarn包管理 Yarn包管理调用教程

    php不能直接调用yarn,但可通过工具集成前端资源。1. 安装node.js和yarn;2. 创建package.json管理依赖;3. 使用yarn install安装包;4. 通过webpack打包资源;5. 利用php函数执行yarn命令;6. 将构建后的文件引入php项目。为实现自动化构建…

    2025年12月10日 好文分享
    100
  • 依赖管理:npm与yarn工作机制

    Yarn 在依赖解析、缓存机制和工作区支持上优于 npm,提供更快的安装速度和更强的跨环境一致性;npm 则依托原生生态和安全审计功能,适合追求稳定与兼容的项目。1. Yarn 采用并行下载与严格依赖算法,减少冗余并提升效率;2. 其全局缓存支持高效离线安装,npm 需额外配置才能媲美;3. Yar…

    2025年11月28日 web前端
    000
  • 包管理工具有哪些?主流软件分享

    常见的包管理工具主要有:npm、Yarn、pnpm、Composer、Maven、pip、Conda 等,其中 npm 是目前全球使用最广泛的JavaScript包管理工具,以丰富的生态、便捷的使用体验以及强大的社区支持闻名。npm具备依赖管理、版本控制、脚本执行等强大功能,使开发过程更加规范化、高…

    2025年11月12日
    000
  • 浅析Node.js包管理工具 npm 和 yarn 的用法

    本篇文章带大家了解一下node.js包管理工具 npm 和 yarn 的使用方法,带大家快速入门npm 和 yarn。 本文学习 node.js 的包管理工具 npm& yarn 的使用。【推荐学习:《nodejs 教程》】 使用 npm 共享项目 : npm 官网: npmjs.com 在…

    2025年11月10日 web前端
    000
  • 一文了解Node.js中的包管理工具–npm

    npm是 node.js 的包管理工具。下面本篇文章就来带大家深入了解一下node包管理工具–npm,希望对大家有所帮助! 一、npm概述 npm (Node Package Manager)是 Node.js 的包管理工具。 什么是包?包就是一坨代码,就是 Node.js 的第三方模块…

    2025年11月9日 web前端
    100
  • 【整理分享】前端开发必备的 npm 常用指令

    npm是node默认包管理工具,在前端开发中,熟悉npm常用命令,对我们解决问题会有很大帮助。下面本篇文章就给大家整理分享一些npm 常用指令,希望对大家有所帮助! npm源设置 查询当前源配置 npm get registry 设置淘宝镜像源(淘宝镜像新域名) npm config set reg…

    2025年11月9日 web前端
    000
  • JavaScript包管理器比较:Npm vs Yarn vs Pnpm

    本篇文章带大家了解一下三种javascript包管理器(npm、yarn、pnpm),并将这三种包管理器进行对比,聊聊npm、yarn、pnpm三者的区别和关联,希望对大家有所帮助,如有问题欢迎指出! 包管理器领域的三个主要参与者: npm Yarn 高性能 npm (pnpm) 立即学习“Java…

    2025年11月9日 web前端
    000
  • 了解两个强大的Node包管理器:npm 和 yarn

    本篇文章带大家了解一下node.js的两个强大包管理器:npm 和 yarn,希望对大家有所帮助! 学习Node的第一步就是要了解node的包管理器:Node,对于npm相信大家并不陌生,因为我们常用它去下载一些包资源 但因为npm的资源库(https://www.npmjs.com/)在国外,使用…

    2025年11月9日 web前端
    000
  • 使用Yarn创建Grafana模板的完整指南

    在本文中,我将引导你一步步完成使用yarn生成grafana模板的过程。grafana是一款开源的数据可视化工具,我们可以利用它来创建各种仪表板,以便更有效地监控和展示数据。请跟随我一起完成这个过程。 首先,我们来浏览一下整个操作的流程。以下是步骤的概述,表格形式展示: 步骤 描述 1安装Node.…

    2025年11月9日 运维
    000
  • 如何使用yarn

    Yarn的使用方法,需要具体代码示例 随着前端技术的日益发展,项目的复杂性也逐渐增加。为了更好地管理和维护前端项目,包管理工具成为项目开发过程中不可或缺的一环。而Yarn作为一款快速、可靠、安全的包管理工具,受到了广大前端开发者的喜爱和使用。 那么,如何正确地使用Yarn呢?本文将为大家详细介绍Ya…

    2025年11月8日 web前端
    000
  • Spark专题系列(三):Spark运行模式

    一:spark运行模式分类 Spark的运行模式可以分为三类: 本地模式(local),适用于演示或测试,通常在Shell命令行中运行。 独立模式(standalone),可以在一个集群中独立运行,利用Spark自身的资源调度方式。 Yarn/Mesos模式,运行在资源管理器上,例如Yarn或Mes…

    2025年11月8日 运维
    100
  • pnpm 是凭什么对 npm 和 yarn 降维打击的

    最近大家是不是经常听到 pnpm?我也是如此。今天我研究了它的机制,确实非常厉害,可以说是对 yarn 和 npm 的降维打击。 那么,pnpm 到底好在哪里呢?我们一起来看看。 我们从包管理工具的发展历史开始讲起,从 npm2 说起: npm2 需要将 node 版本降到 4,那 npm 版本就是…

    2025年11月6日 系统教程
    000

发表回复

登录后才能评论
关注微信