精华内容
参与话题
问答
  • yarn的安装和使用

    万次阅读 多人点赞 2018-08-02 10:45:41
    yarn的简介: Yarn是facebook发布的一款取代npm的包管理工具。 yarn的特点: 速度超快。 Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载。 同时利用并行下载以最大化资源利用率,因此安装速度更快。...

    yarn的简介:

    Yarn是facebook发布的一款取代npm的包管理工具。


    yarn的特点:

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

    yarn的安装:

    1. 下载node.js,使用npm安装
      npm install -g yarn
      查看版本:yarn --version
    2. 安装node.js,下载yarn的安装程序:
      提供一个.msi文件,在运行时将引导您在Windows上安装Yarn
    3. Yarn 淘宝源安装,分别复制粘贴以下代码行到黑窗口运行即可
      yarn config set registry https://registry.npm.taobao.org -g
      yarn config set sass_binary_site http://cdn.npm.taobao.org/dist/node-sass -g

    yarn的常用命令:

    • 安装yarn

      • npm install -g yarn
    • 安装成功后,查看版本号:

      • yarn --version
    • 创建文件夹 yarn

      • md yarn
    • 进入yarn文件夹

      • cd yarn
    • 初始化项目

      • yarn init // 同npm init,执行输入信息后,会生成package.json文件
    • yarn的配置项:

      • yarn config list // 显示所有配置项
      • yarn config get <key> //显示某配置项
      • yarn config delete <key> //删除某配置项
      • yarn config set <key> <value> [-g|--global] //设置配置项
    • 安装包:

      • yarn install //安装package.json里所有包,并将包及它的所有依赖项保存进yarn.lock
      • yarn install --flat //安装一个包的单一版本
      • yarn install --force //强制重新下载所有包
      • yarn install --production //只安装dependencies里的包
      • yarn install --no-lockfile //不读取或生成yarn.lock
      • yarn install --pure-lockfile //不生成yarn.lock
    • 添加包(会更新package.json和yarn.lock):

      • yarn add [package] // 在当前的项目中添加一个依赖包,会自动更新到package.json和yarn.lock文件中
      • yarn add [package]@[version] // 安装指定版本,这里指的是主要版本,如果需要精确到小版本,使用-E参数
      • yarn add [package]@[tag] // 安装某个tag(比如beta,next或者latest)

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

      • yarn add --dev/-D // 加到 devDependencies
      • yarn add --peer/-P // 加到 peerDependencies
      • yarn add --optional/-O // 加到 optionalDependencies

      //默认安装包的主要版本里的最新版本,下面两个命令可以指定版本:

      • yarn add --exact/-E // 安装包的精确版本。例如yarn add foo@1.2.3会接受1.9.1版,但是yarn add foo@1.2.3 --exact只会接受1.2.3版
      • yarn add --tilde/-T // 安装包的次要版本里的最新版。例如yarn add foo@1.2.3 --tilde会接受1.2.9,但不接受1.3.0
    • 发布包

      • yarn publish
    • 移除一个包

      • yarn remove <packageName>:移除一个包,会自动更新package.json和yarn.lock
    • 更新一个依赖

      • yarn upgrade 用于更新包到基于规范范围的最新版本
    • 运行脚本

      • yarn run 用来执行在 package.json 中 scripts 属性下定义的脚本
    • 显示某个包的信息

      • yarn info <packageName> 可以用来查看某个模块的最新版本信息
    • 缓存

      • yarn cache
        • yarn cache list # 列出已缓存的每个包 yarn cache dir # 返回 全局缓存位置 yarn cache clean # 清除缓存

    npm 与 yarn命令比较:

    这里写图片描述


    npm 与 yarn相关问题比较:

    npm模块的依赖:
    • npm存在一些历史遗留问题,请看下图:
      这里写图片描述

    比如说你的项目模块依赖是图中描述的,@1.2.1代表这个模块的版本。在你安装A的时候需要安装依赖C和D,很多依赖不会指定版本号,默认会安装最新的版本,这样就会出现问题:比如今天安装模块的时候C和D是某一个版本,而当以后C、D更新的时候,再次安装模块就会安装C和D的最新版本,如果新的版本无法兼容你的项目,你的程序可能就会出BUG,甚至无法运行。这就是npm的弊端,而yarn为了解决这个问题推出了yarn.lock的机制,这是作者项目中的yarn.lock文件。

    yarn.lock文件格式:

    这里写图片描述

    大家会看到,这个文件已经把依赖模块的版本号全部锁定,当你执行yarn install的时候,yarn会读取这个文件获得依赖的版本号,然后依照这个版本号去安装对应的依赖模块,这样依赖就会被锁定,以后再也不用担心版本号的问题了。其他人或者其他环境下使用的时候,把这个yarn.lock拷贝到相应的环境项目下再安装即可。
    注意:这个文件不要手动修改它,当你使用一些操作如yarn add时,yarn会自动更新yarn.lock。

    使用yrm工具管理一些npm源

    安装

    • yarn global add yrm

    查看可用源

    • yrm ls

    选择源

    • yrm use yarn

    快速删除node_modules

    手动删除真的很慢:

    • 安装: npm install rimraf -g
    • 使用:rimraf node_modules

    rimraf是node的一个包,可以快速删除node_modules,再也不用等半天了

    展开全文
  • yarn

    2019-10-12 13:40:14
    yarn add :在当前目录安装 yarn install :根据package.json安装包 yarn global add :安装到全局 yarn remove : 卸载 yarn cache clean :清除缓存。 yarn config set global-folder ‘目标路径’:修改yarn全局安装包...

    yarn add :在当前目录安装
    yarn install :根据package.json安装包
    yarn global add :安装到全局
    yarn remove : 卸载
    yarn cache clean :清除缓存。
    yarn config set global-folder ‘目标路径’:修改yarn全局安装包下载位置
    yarn global bin 查看是否修改成功
    yarn config set cache-folder ‘目标路径’:修改yarn全局安装包缓存位置
    yarn global dir查看是否修改成功

    展开全文
  • YARN

    千次阅读 2020-02-18 17:55:24
    YARN 是 分布式资源管理系统 架构图 a.png #组件组成: Client, ResourceManager, ApplicationMaster, NodeManager, Container #各组件描述: Client: 负责提交应用程序 ResourceManager: 全局的资源管理器...

    YARN 是 分布式资源管理系统

    架构图

    a.png

    #组件组成: 
    Client, ResourceManager, ApplicationMaster, NodeManager, Container
    
    #各组件描述: 
    Client:
    负责提交应用程序
    
    ResourceManager:
    全局的资源管理器, 整个集群只有一个, 负责集群资源的统一管理和调度分配;
    The ResourceManager has two main components: Scheduler and ApplicationsManager.
    1、调度器:调度器根据容量、队列等限制条件(如每个队列分配一定的资源,最多执行一定数量的作业等),将系统中的资源分配给各个正在运行的应用程序中,需要注意的是,该调度器是一个”纯调度器”,它不再从事任何与具有应用程序相关的工作,比如不负责监控或者跟踪应用的执行状态等,也不负责重新启动因应用程序失败或者硬件故障而产生的失败任务,这些均交由应用程序相关的ApplicationMaster完成,调度器仅根据各个应用程序的资源需求进行资源分配,而资源分配单位用一个抽象概念”资源容器”(resource container,简称container)表示,container是一个动态资源分配单位,它将内存、cpu、磁盘、网络等资源封装在一起,从而限定每个任务使用的资源量,此外该调度器是一个可插拔的组件,用户可根据自己的需要设计新的调度器,YARN提供多种直接可用的调度器,比如 fair scheduler和capacity scheduler等 
    2、应用程序管理器 
    应用程序管理器负责管理整个系统中所有应用程序,包括应用程序提交、与调度器协商资源以启动ApplicationMaster、监控ApplicationMaster运行状态并在失败时重启它等
    功能: 
    1. 处理客户端请求
    2. 启动/监控 ApplicationMaster
    3. 监控NodeManager
    4. 资源分配和调度
    
    ApplicationMaster:
    在yarn上运行的应用程序实例对象,负责管理此应用程序的执行; 
    功能:
    1. 数据切分
    2. 为应用程序申请资源, 和进一步分配
    3. 任务监控和容错处理
    
    NodeManager:
    整个集群有多个, 负责本节点的资源管理和使用, NodeManager管理抽象容器container
    功能:
    1. 单个节点上的资源管理和任务管理
    2. 处理来自 ResourceManager 的命令
    3. 处理来自 ApplicationMaster 的命令 
    
    Container:
    yarn中对资源的抽象, 封装本节点上的内存,cpu,磁盘,网络等资源, 此资源就是用container表示;
    

    yarn工作流程

    b.png

    #yarn工作流程
    
    1. client端向ResourceManager提交应用程序, 也就是client端会将 jar包,参数等数据上传到hdfs上的某路径下;
    
    2. resourceManager将此应用程序添加到任务队列中;
    
    3. 等待资源充沛时, resourceManager为该应用程序分配第一个container,在这个container中启动应用程序的ApplicationMaster; 
    
    4. ApplicationMaster首先向ResourceManager注册,用户可以直接通过ResourceManager查看应用程序的运行状态, 还会进行分片等工作, 之后向ResourceManager申请运行任务所需的资源;
    
    5. ApplicationMaster采用轮询的方式通过RPC协议向ResourceManager申请和领取资源, 发送命令让NodeManager创建container, 之后执行task;
    
    6. ApplicationMaster监控job执行作业, 必要时候进行容错处理, 直到ApplicationMaster检测到job完成后, 向ResourceManager通知, 注销自己
    
    
    

     

    展开全文
  • yarn详细入门教程

    万次阅读 多人点赞 2018-01-31 11:51:47
    Yarn 是 Facebook, Google, Exponent 和 Tilde 开发的一款新的 JavaScript 包管理工具。就像我们可以从官方文档了解那样,它的目的是解决这些团队使用 npm 面临的少数问题,即: 1.安装的时候无法保证速度/一致性 2...

    这里写图片描述

    简介

    Yarn 是 Facebook, Google, Exponent 和 Tilde 开发的一款新的 JavaScript 包管理工具。就像我们可以从官方文档了解那样,它的目的是解决这些团队使用 npm 面临的少数问题,即:

    1. 安装的时候无法保证速度/一致性
    2. 安全问题,因为 npm 安装时允许运行代码

    Yarn 同样是一个从 npm 注册源获取模块的新的 CLI 客户端。注册的方式不会有任何变化 —— 你同样可以正常获取与发布包。


    一、安装

    1.进入官方下载页面安装

    2.最简单的方法是运行:

    npm install -g yarn

    现在的yarn安装页面是这么说的:

    注意:通常情况下不建议通过npm进行安装。npm安装是非确定性的,程序包没有签名,并且npm除了做了基本的SHA1哈希之外不执行任何完整性检查,这给安装系统程序带来了安全风险。

    基于这些原因,强烈建议你通过最适合于你的操作系统的安装方法来安装yarn。

    以这种速度发展下去的话,如果yarn要宣布他们自己的registry,让开发者慢慢淘汰npm的话,我们一点都不会感到惊讶。

    安装成功后即可查看版本:

    yarn --version

    这里写图片描述


    二、初始化

    进入项目目录下并执行 yarn init

    yarn init

    这里写图片描述

    会在根目录下生成一个package.json,与npm类似具体不做解释,如下

    这里写图片描述


    三、添加依赖

    1. 添加包:yarn add [pkg-name] ,会自动安装最新版本,会覆盖指定版本号

    举例添加 jquery :yarn add jquery

    这里写图片描述

    node_modules下会生成 jquery 文件夹,里面便是 yarn 生成的依赖

    这里写图片描述


    2. 一次性添加多个包:yarn add [pkg-name1] [pkg-name2]

    举例添加 bootstrap 和 zepto:yarn add bootstrap zepto

    这里写图片描述

    成功后如下

    这里写图片描述


    3. 添加指定版本的包:yarn add [pkg-name]@ver

    举例添加 2.1.4版本的jquery:yarn add jquery@2.1.4

    这里写图片描述

    成功后如下

    这里写图片描述


    4. 将包更新到指定版本:yarn upgrade [pkg-name]@ver

    举例将 jquery从2.1.4更新到3.0.0版本:yarn upgrade jquery@3.0.0

    这里写图片描述

    成功后如下

    这里写图片描述


    5. 将包更新到最新版本:yarn upgrade --latest [pkg-name]

    举例将3.0.0版本的 jquery更新到最新版本:yarn upgrade --latest jquery

    这里写图片描述

    成功后如下

    这里写图片描述


    6. 删除包:yarn remove [pkg-name]

    举例删除 jquery:yarn remove jquery

    这里写图片描述

    成功后如下

    这里写图片描述


    7. 一次删除多个包:yarn remove [pkg-name1] [pkg-name2]

    举例删除 bootstrap 和 zepto:yarn remove bootstrap zepto

    这里写图片描述


    四、yarn.lock 自动锁定安装包版本

    Npm 有一个名为 shrinkwrap 的特性,其目的是在生产环境中使用时锁定包依赖。shrinkwrap 的挑战是每个开发者都必须手动运行 npm shrinkwrap 生成 npm-shrinkwrap.json 文件。

    使用 Yarn,则截然不同。在安装过程中,会自动生成一个 yarn.lock 文件,yarn.lock 会记录你安装的所有大大小小的。有点类似 PHP 开发者们所熟悉的 composer.lock。yarn.lock 锁定了安装包的精确版本以及所有依赖项,只要你不删除 yarn.lock 文件,再次运行 yarn install 时,会根据其中记录的版本号获取所有依赖包。有了这个文件,你可以确定项目团队的每个成员都安装了精确的软件包版本,部署可以轻松地重现,且没有意外的 bug。你可以把 yarn.lock 提交到本库里,这样其他签出代码并运行 yarn install 时,可以保证大家安装的依赖都是完全一致的。

    例如上面安装的bootstrap、jquery和zepto会在yarn.lock中有记录,如下图:

    这里写图片描述

    这里新建一个 yarn_demo2 的文件夹,并将 package.jsonyarn.lock 文件从 yarn_demo 文件夹中复制过来,如下图:

    这里写图片描述

    进入yarn_demo2 文件夹 执行 yarn 命令,即可一键下载 yarn.lock 中记录的依赖包,相当方便快捷,值得你拥有~

    这里写图片描述

    这里写图片描述


    五、yarn和npm命令对比

    这里写图片描述

    至于bower与npm,其用法也是大同小异,但大佬给出的建议是:
    这里写图片描述


    这里写图片描述
    end ~

    展开全文
  • Yarn 安装与使用详细介绍

    万次阅读 多人点赞 2018-08-24 12:13:34
    什么是 Yarn 速度快 离线模式 可靠可确定性 网络优化 扁平化模式 版本控制 其他关于 Yarn 的介绍 Yarn 安装 windows mac 方式一 方式二 Yarn 换源 背景 在 Node 生态系统中,依赖通常安装在项目的 node_...
  • Yarn ResourceManager GC overhead limit exceeded

    万次阅读 2020-09-07 15:35:17
    Yarn ResourceManager GC overhead limit exceeded 问题 FATAL yarn.YarnUncaughtExceptionHandler (YarnUncaughtExceptionHandler.java:uncaughtException(51)) - Thread Thread[Timer for 'ResourceManager' ...
  • npm 和 yarn 缓存清理

    万次阅读 2019-05-30 11:30:03
    npm cache clean --force yarn cache clea
  • Yarn 简介

    千次阅读 2020-04-17 11:31:15
    1. 什么是YarnYarn -- 通用资源管理系统和调度平台 2. Yarn 特点 1、支持多计算框架 2、资源利用率高,运行成本低,数据共享。 Yarn资源管理只包括内存与CPU,Yarn回去汇总集群内所有节点上的CPU总和数,和内存...
  • 卸载 yarn

    万次阅读 2018-07-06 17:02:37
    如果不想使用yarn , 可通过 命令: $ yarn global bin 查询到存放地址之后 到对应目录删除掉yarn就可以了
  • Yarn knowledge

    千次阅读 2020-03-31 09:43:03
    1、什么是Yarn 通用资源管理系统和调度平台 2、Yarn特点: 支持多计算框架 资源利用率高,运行成本低,数据共享。 3、Yarn的意义: 降低了企业硬件的成本(多个集群变成一个集群),减少了资源的了浪费,运营...
  • YarnYarn 命令详解

    2020-09-21 21:43:51
    安装依赖包:yarn == yarn install 添加依赖包:yarn add 配置淘宝镜像:yarn config set registry “https://registry.npm.taobao.org” 2.yarn命令列表 命令操作参数标签 yarn add 添加依赖包 包名 --dev/-D ...
  • yarn 命令行

    2019-08-15 18:40:26
    yarn 命令行
  • 一、yarn-cluster 与standalone模式不同,yarn-cluster是基于yarn集群,yarn集群上有ResourceManager(RM)和NodeManager(NM)。 1、发送请求到RM,请求启动AM 2、RM会分配container,在某个NM上启动AM 3、AM...
  • 卸载yarn

    千次阅读 2019-05-07 15:35:21
    忘了当初怎么安装的 brew uninstall yarn后还能执行yarn which yarn 然后进去把它都删了
  • yarn 升级指令

    万次阅读 2018-11-16 14:24:20
    yarn 升级最新版本 npm install yarn@latest -g 查看yarn历史版本 npm view yarn versions --json yarn 升级指定版本(例:升级到1.21.3版本) yarn upgrade v1.21.3
  • Yarn权限

    2020-09-04 10:39:21
    一、yarn漏洞 1、黑客注入脚本,以hadoop-yarn用户疯狂提交 2、署名用户为yarn的进程疯狂占用CPU,整个集群CPU跑慢 处理: 1、先收回\tmp目录的执行权限(为解燃眉之急,这一步是最快的,可以快速让环境恢复正常的...
  • idea配置yarnyarn安装

    千次阅读 2020-03-28 11:15:31
    yarn等开发工具下载链接 开发工具下载:https://pan.baidu.com/s/1tZmFuViGz5IwHhzmA-FN6A 提取码:frya idea配置yarn

空空如也

1 2 3 4 5 ... 20
收藏数 64,305
精华内容 25,722
关键字:

Yarn