简单快捷!Yarn的安装与使用指南

news2024/9/20 16:55:13

Yarn 是由 Facebook (现 Meta) 开发的包管理工具。

今天,我将介绍如何使用 Yarn。

目录

Yarn 的官方网站

 关于安装

版本确认

开始一个新项目(创建 package.json 文件)

安装软件包

升级包

运行脚本

执行包的命令

卸载包

 总结


Yarn 的官方网站

Yarn的官方网站如下:

Home page | YarnYarn, the modern JavaScript package managericon-default.png?t=N7T8https://yarnpkg.com/

 

 关于安装

Yarn官方推荐使用Corepack进行管理。Corepack是一个可以管理pnpm和Yarn等包管理器的工具。

在Node.js版本为v16.10及以上的环境中,Corepack通常已经预装。如果你还没有安装Node.js,可以参考相关安装指南来安装。

 

如果使用 nodebrew 安装 Node.js,在我的环境中会出现错误,导致无法使用 yarn 命令。

那么,我们可以查看是否可以使用 corepack 命令。请执行以下命令来显示帮助信息。

$ corepack -h

如果显示了命令的用法说明,那么就可以使用 corepack 命令。此外,yarn 无需通过 npm 安装,只需使用 corepack enable 命令启用即可。

接下来,请使用以下命令来启用包管理器(可能需要以管理员权限运行)。

$ sudo corepack enable

 如果不以管理员权限运行,可能会出现类似以下的错误,请注意:

$ corepack enable
Internal Error: EACCES: permission denied, symlink '../lib/node_modules/corepack/dist/pnpm.js' -> '/usr/local/bin/pnpm'
Error: EACCES: permission denied, symlink '../lib/node_modules/corepack/dist/pnpm.js' -> '/usr/local/bin/pnpm'

这样一来,就可以使用 yarn 命令了。

$ yarn -v
4.3.1

版本确认

刚才执行的 yarn -v 是用于检查 Yarn 版本的命令。

可以使用以下命令来确认 Yarn 的版本:

$ yarn --version
4.3.1

上面的命令可以简化为如下形式:

$ yarn -v
4.3.1

开始一个新项目(创建 package.json 文件)

开始一个新项目时,会创建 package.json 文件。package.json 文件描述了项目(即将创建的包)的相关信息。

package.json 文件中包含的信息包括:

  • 项目名称(包名)
  • 版本
  • 项目(包)的描述
  • 许可证
  • 使用的依赖包

package.json 文件可以通过以下命令创建:

$ yarn init

然后会显示一些问题,您需要输入相应的信息。不过,您也可以在之后随时修改这些信息。如果您不打算公开这个包,也不需要特别在意这些问题,可以直接按下 Enter 键(Return 键)跳过。

另外,您可以使用 -y 选项,这样会默认同意所有问题,相当于每个问题都按了 Enter(Return)。

$ yarn init -y

如果您不打算公开这个包,为了防止意外公开,可以在 package.json 文件中添加 "private": true。这可以确保包不会被意外发布。

另外,您可以使用 -p 选项,这样可以方便地将 "private": true 添加到 package.json 文件中。

 

$ yarn init -p

当然,您也可以同时使用 -y-p 选项。这会在默认接受所有问题的同时,将 "private": true 添加到 package.json 文件中,以防止意外发布。

$ yarn init -yp

安装软件包

使用 Yarn 安装包时,可以使用 yarn add 命令。这个命令会将指定的包添加到项目中,并更新 package.json 文件和 yarn.lock 文件。具体使用方法如下:

$ yarn add [包名]

例如,要安装 bootstrap包,可以运行:

$ yarn add bootstrap

这样,Yarn 会下载并安装该包及其依赖项。

要指定安装包的版本,可以在包名后面加上 @ 和版本号。例如,如果你想安装特定版本的包,例如 lodash 4.17.21,可以使用以下命令:

$ yarn add 包名@版本

例如,如果想安装 Bootstrap 的版本 5.0.2,可以使用以下命令:

$ yarn add bootstrap@v5.0.2

要安装仅在开发时使用的包,可以使用 --dev 选项。例如,如果您想安装一个开发环境中使用的工具或库,可以运行以下命令:

$ yarn add --dev sass

或者,可以简写为 -D。这个选项同样用于安装开发时使用的包。

$ yarn add -D sass

 

如果环境发生变化或需要重新安装依赖,可以使用 package.json 中列出的包来批量安装。这通常在项目迁移到新环境或新的开发人员加入项目时使用。

package.json 文件所在的目录中,运行以下命令:

$ yarn install

或者,只需运行 yarn 命令,也可以完成相同的安装效果。这会根据 package.json 文件中的依赖项信息自动安装所有必要的包。Yarn 会检查并下载这些包的适当版本,以确保项目所需的环境正确配置。

$ yarn

升级包

要升级包,可以使用 yarn upgrade 命令。这会升级 package.json 中列出的所有包到符合其指定版本范围的最新版本。

要升级所有的包,可以使用以下命令:

$ yarn upgrade

要将所有包升级到最新版本,可以使用 --latest 选项。命令如下:

$ yarn upgrade --latest

要指定升级的包,可以使用以下命令格式:

$ yarn upgrade 包名

另外,还可以指定要升级的版本。

$ yarn upgrade 包名@版本

例如,如果您想将 Bootstrap 升级到版本 5.2.3,可以使用以下命令:

$ yarn upgrade bootstrap@v5.2.3

这样会将项目中的 Bootstrap 包升级到指定的 5.2.3 版本。

运行脚本

您可以在 package.json 中预先编写脚本,然后执行它们。

首先,将以下内容添加到您的 package.json

{
  "name": "sample_project",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "private": true,
  "scripts": {
    "say": "echo hello"
  },
  "dependencies": {
    "bootstrap": "^5.2.3"
  },
  "devDependencies": {
    "sass": "^1.56.1"
  }
}

要执行脚本,请使用 yarn run

$ yarn run say
yarn run v4.3.1
$ echo hello
hello
✨  Done in 0.03s.

省略 run 也会执行相同的操作。

$ yarn say
yarn run v4.3.1
$ echo hello
hello
✨  Done in 0.03s.

执行包的命令

使用 yarn run 也可以执行已安装包的命令。

例如,要显示刚才安装的 Sass 的版本,请使用以下命令:

$ yarn run sass --version

省略 run 也会执行相同的操作。

$ yarn sass --version

另外,通过使用之前介绍的脚本,您可以预先编写 Sass 的命令,使执行变得更加简单。

{
  "name": "sample_project",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "private": true,
  "scripts": {
    "build:sass": "sass --no-source-map src/sass/:dist/css/"
  },
  "dependencies": {
    "bootstrap": "^5.2.3"
  },
  "devDependencies": {
    "sass": "^1.56.1"
  }
}

可以使用以下命令来执行:

$ yarn run build:sass

或者省略run

$ yarn build:sass

卸载包

可以使用以下命令卸载包。

$ yarn remove 包名

例如,要卸载 Bootstrap,可以使用以下命令:

$ yarn remove bootstrap

 总结

Yarn 是由 Facebook (Meta) 开发的,可以替代 npm 的包管理器。

通过安装 Node.js,可以使用 corepack,并通过 corepack 允许使用 Yarn。

Yarn 的使用方法与 npm 非常相似,因此学习时间很短,可以很快上手。

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

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

相关文章

光伏+农业,会激发出怎样的火花?

在这个科技与自然和谐共生的时代,光伏技术与现代农业的深度融合,正悄然掀起一场绿色革命。当“光伏”这一代表未来能源方向的技术与承载着人类生存之本的“农业”相遇,两者之间的化学反应,不仅照亮了清洁能源的道路,更…

MP的使用

1、MP简介 MyBatis-Plus(简称MP)是一个MyBatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生 官网:MyBatis-Plus 🚀 为简化开发而生 参考教程:https://baomidou.c…

【LeetCode 随笔】C++入门级,详细解答加注释,持续更新中。。。

文章目录 58.【简单】最后一个单词的长度🌟 🌈你好呀!我是 山顶风景独好 🎈欢迎踏入我的博客世界,能与您在此邂逅,真是缘分使然!😊 🌸愿您在此停留的每一刻,都…

全网最详细!! Linux 安装、配置教程

一、下载安装包 首先去官网下载VMware最新版本,以及发行版CentOS -7,懒得下载的可以私信我,我给你发包 其中,CentOS(Community Enterprise Operating System)是一个基于Linux的开源操作系统,它是…

VBA技术资料MF181:图片导入Word后添加说明文字

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套,分为初级、中级、高级三大部分,教程是对VBA的系统讲解&#…

Java学习Day15:基础篇5

1.参数问题 2.变量 3.可变参数 package 方法demo1__code;public class two {public static void main(String[] args) {text.add(3,4,5,6);} } class text{static void add(int ... a){} } 可变参数其实是一个数组,可以用数组的方式使用; ATT&#xf…

Jenkins详细使用教程

目录 1. 什么是Jenkins? 2. 为什么使用Jenkins? 3. 安装Jenkins 3.1 下载相关文件 3.2 解压Linux版本的JDK 3.3 配置JDK环境 3.4 运行jenkins.war 3.5 安装完成 4. 访问Jenkins 5. 修改密码 6. 集成JDK 7. Jenkins集成Git 7.1 使用Jenkins拉取…

[C++] vector入门迭代器失效问题详解

文章目录 vector介绍**vector iterator 的使用** vector迭代器失效问题由扩容或改变数据引起的迭代器失效reserve的实现(野指针)insert实现(迭代器位置意义改变)insert修改后失效的迭代器 it迭代器失效 erase后的问题总结&#xf…

代码随想录||day25 非递减子序列,全排列问题

491非递减子序列 力扣题目链接 题目描述: 给你一个整数数组 nums ,找出并返回所有该数组中不同的递增子序列,递增子序列中 至少有两个元素 。你可以按 任意顺序 返回答案。 数组中可能含有重复元素,如出现两个整数相等&#x…

【C++】透析类和对象(下)

有不懂的可以翻阅我之前文章! 个人主页:CSDN_小八哥向前冲 所属专栏:CSDN_C入门 目录 拷贝构造函数 运算符重载 赋值运算符重载 取地址运算符重载 const成员函数 取地址重载 再探构造函数 初始化列表 类型转换 static成员 友元 内…

LLMs之Llama 3.1:Llama 3.1的简介、安装和使用方法、案例应用之详细攻略

LLMs之Llama 3.1:Llama 3.1的简介、安装和使用方法、案例应用之详细攻略 导读:2024年7月23日,Meta重磅推出Llama 3.1。本篇文章主要提到了Meta推出的Llama 3.1自然语言生成模型。 背景和痛点 >> 过去开源的大型语言模型在能力和性能上一…

vmware虚拟机安装linux没有IP地址

直接设置固定IP 1、在虚拟机菜单栏选择编辑,然后点击虚拟网络编辑器 2、选择Vmnet8 Net网络连接方式,随意设置子网IP 3、点击NAT设置页面,查看子网掩码和网关,修改静态IP会用到 4、打开电脑控制面板–网络和Internet–网络连…

Visual Studio 智能代码插件:Fitten Code

Fitten Code 是由非十大模型驱动的AI编程助手,它可以自动生成代码,提升开发效率,协助调试 Bug,节省时间。还可以对话聊天,解决编程碰到的问题。 Fitten Code 免费且多种编程语言,包括 Python、C、Javascri…

【CG】计算机图形学(Computer Graphics)基础(其贰)

0 学习视频 B站GAMES101-现代计算机图形学入门-闫令琪 ※ 接上文【CG】计算机图形学(Computer Graphics)基础(其壹) 7 光线追踪 7.1 为什么需要光线追踪? 光栅化无法妥善处理全局效果 (软)阴…

sizeof和strlen区别

如图,sizeof来计算的时候,得出的是计算机用多少个字节来表示一个地址 而strlen来计算的时候,只是计算出他的有效字符长度 打印出的不同地址就是其不同的区别

数据中心同步指南 : 数据中心架构师和其他网络专家需要了解有关 5G 同步的知识

随着 5G 的推出,电信基础设施的设计方式正在发生巨大变化。由于网络运营商希望创建更开放的网络基础设施生态系统,部分基础设施(如基带处理)被虚拟化并移至电信数据中心。影响数据中心架构的另一个与 5G 相关的趋势是移动边缘计算…

20240727 每日AI必读资讯

🌐OpenAI向Google宣战,重磅推出AI搜索引擎SearchGPT ! - 将 AI 与实时网络信息结合 提供生成式UI结果 - SearchGPT 结合网络最新信息可以直接回答问题,同时注明相关来源链接。 - 还可以像与人对话一样提出后续问题,…

YOLOv8 改进 | 注意力机制 | 处理原始SE通道信息丢失问题的ESE【含分割,检测,OBByaml文件】

秋招面试专栏推荐 :深度学习算法工程师面试问题总结【百面算法工程师】——点击即可跳转 💡💡💡本专栏所有程序均经过测试,可成功执行💡💡💡 专栏目录 :《YOLOv8改进有效…