yarn如何全局安装命令以及和环境变量的关系(代码片段)

saysmy saysmy     2022-12-22     686

关键词:

npm全局安装

npm i -g xxx

yarn 全局安装

yarn global add xxx

然而你可能会发现npm全局安装后的命令可以直接使用,而yarn却不行,这是为什么呢?

我们来查看下npm和yarn的bin目录

 技术分享图片

bin是binary的缩写,意思是存放二进制可执行文件的目录,比如exe,msi等,而npm,yarn全局安装的命令就会从这里面开始查找可执行文件。

那为什么系统会从这个路径下进行查找可执行文件呢?这就要说下环境变量。

简单的说计算机在执行命令的时候是在环境变量找对应的命令的位置的。如果不正确设置环境变量就不能正确使用相应的命令。如果觉得麻烦可以安装IDE,这样一般就不用自己手动设置环境变量了
如果执行某个命令,系统无法在当前文件夹里找到对应的.exe(可执行文件),那么系统就会去环境变量path包含的路径找挨个找看是否能知道对应的.exe,一旦找到第一个对应的.exe就运行命令,其他的路径下就不找了。如果找不到你就会看到“系统找不到某某命令”的提示。

而在安装node的过程,安装进程会自动的增加node和npm的路径到环境变量,如下图:

技术分享图片

所以我们使用npm安装的全局命令,可以直接使用,无需再配置环境变量。

 

打开bin目录可以发现我们刚刚全局安装的文件

技术分享图片

 

 注意:使用cnpm安装的yarn,如果要卸载,需要使用npm卸载,cnpm卸载不了,卸载完成,需要重启命令行工具。

总结下 yarn的安装方法:

方法1. 官网下载msi文件,双击安装,安装成功后既可全局使用yarn命令

方法2. 使用npm安装yarn

npm i -g yarn

注意:

  1. 使用方法1安装后需要重启命令行工具,命令行工具会重新加载环境变量。
  2. 方法1使用的是yarn的安装目录 C:Program Files (x86)Yarnin 寻找到可执行文件,同时方法1会新建bin目录并在用户变量内增加bin地址
  3. 方法2使用的是npm的bin地址启动
  4. 方法2在安装新命令时,才去新建yarn的bin目录
  5. 使用方法2,yarn全局安装命令需要配置环境变量,将 yarn global bin 的地址配置到用户变量内,然后重启命令行工具

 

yarn和npm属于两个不同的模块,不要把依靠他们安装的模块混在一起了,如果一个模块的安装比较混乱,导致这个模块的命令不能全局使用,可以尝试一下方法:

  • 在npm, cnpm,yarn中分别卸载该模块
  • 查看计算机程序和功能中是否安装此模块软件,进行卸载
  • 重新安装
  • 重启命令行工具
  • 如果还不行,就检查环境变量,看该模块的目录是否在环境变量中,如果不在,进行添加,然后再重启命令行工具

yarn全局安装命令报错文件名、目录名或卷标语法不正确

参考技术A前情摘要:1、用npm装的yarn2、自定义了npm的全局安装位置和缓存3、用yarn安装taro脚手架的时候,运行项目报错【文件名、目录名或卷标语法不正确】原因:可能因为yarn的命令目录bin与其全局安装位置不在一个文件夹下... 查看详情

‘vue‘不是内部或外部命令,也不是可运行的程序或批处理文件。(代码片段)

...没有vue和vue.cmd文件 我这里没有因为我是使用yarn安装的全局vue使用yarnglobalbin 命令得到yarn的全局bin路径C:\\Users\\Administrator\\AppData\\Local\\Yarn\\bin打开一看就是我想要的东西配配置到环境变量的path即可  配置完成需要重启cmd  查看详情

修改yarn和npm的全局安装和缓存位置

参考技术A在CMD命令行中执行在我们使用全局安装包的时候,会在“D:\\Software\\yarn\\global”下生成node_modules.bin目录我们需要将D:\\Software\\yarn\\global\\node_modules.bin整个目录添加到系统环境变量中去,否则通过yarn添加的全局包在cmd中... 查看详情

npm和yarn更改依赖包全局下载和缓存路径(代码片段)

1、在D盘新建一个目录,用来存放npm或yarn的cache和依赖包文件我这里新建的文件夹如下:D:ode_packagepmD:ode_packagepm_cacheD:ode_packageyarnD:ode_packageyarn_cache 2、更改npm 和yarn 的配置#npmnpmconfigsetprefix"D:ode_packagepm"npmconfigsetcache"D:od... 查看详情

2021-10-02(代码片段)

nrm的全局安装,npmnode.js的安装nrm的全局安装,npmnode.js的安装#安装以及配置node.js安装node.js,到官网下载node.js在path中配置好环境变量,指定你的路径指定全局模块的存放路径,以及cache的路径`注意:用管理员执行cmd命令在path环... 查看详情

如何将composer设置为全局变量?(代码片段)

全局安装是将Composer安装到系统环境变量 PATH 所包含的路径下面,然后就能够在命令行窗口中直接执行 composer 命令了。Mac或Linux系统:打开命令行窗口并执行如下命令将前面下载的 composer.phar 文件移动到&nbs... 查看详情

antdesignpro安装学习(代码片段)

...p;安装完毕后,一定要设置环境变量  2、使用npm安装(全局安装)npmiyarn-g-i:install-g:全局安装(global),使用-g或--global   ps:可以使用 yarn-v 检测是由安装成功,也可以直接输入 yarn 查看安装yarn的信... 查看详情

ESLint 在 Yarn 全局安装中出现 Prettier 问题

】ESLint在Yarn全局安装中出现Prettier问题【英文标题】:ESLintwithPrettierissuesonYarnglobalinstall【发布时间】:2017-12-0302:25:09【问题描述】:我正在设置我的ReactJS环境,并且正在关注有关该主题的FrontendMasters课程。在通过Yarn全局安装esl... 查看详情

yarn全局安装问题

参考技术A首先区分npm全局安装和yarn全局安装npm是npm-g     yarn是yarn global    yarn全局安装并不是yarn-g。 yarn global才是他的命令yarnaddtypescript-g 你这样安装ts后,tscindex.ts是识别不到的... 查看详情

修改npm安装的全局路径和配置环境变量的坑

修改npm安装的全局路径和配置环境变量的坑转自:http://www.qdfuns.com/notes/30749/0f66fcf5e62eed010f744d0d4adaa870.html我之前安装npm时全是默认安装,模块全部安装在C盘了,今天心血来潮,把路径改到了D盘,结果改完后模块都不能识别了,... 查看详情

全局变量和环境变量的区别

全局变量:启动脚本了.在各线程,以及主程序中.可以互相传递值.每次启动脚本,初始值都一样.环境变量:启动脚本了.在各线程,以及主程序中.可以互相传递值.每次启动脚本,初始值是上次停止脚本时的值.例子:Global全局变量Dimenv环境... 查看详情

基于m1(arm)架构的vue2环境(代码片段)

文章目录1.环境说明2.安装步骤踩坑:使用yarn全局安装vue-cli成功,但是vue命令无法识别,需要手动配置环境变量。npm安装vue-cli失败,网络连接不稳定导致安装失败,采用配置cnpm全局安装vue-cli成功,无需再配置... 查看详情

通过yarn安装vuecli后无法执行vue命令

参考技术A在安装@vue/cli脚手架的时候,通过npm安装总是无法成功,改用淘宝镜像安装也是一样的。自己改用yarn安装,确实能够安装,但是安装完成后无法执行vue命令,执行时提示如下错误:但是通过yarngloballist命令查看时,确实... 查看详情

bash编程013——环境变量

...储持久数据的一种简便方法。bash的环境变量分为两类:全局变量和局部变量。补充:bash使用一致的专有环境变量,但是不同发行版的linux可能会添加自己的环境变量,本博客使用的发行版为Ubuntu16.04.5Gnome。全局变量对于shell会话... 查看详情

环境变量(代码片段)

环境变量的查询、定义、赋值及持久化。环境变量($):全局环境变量局部环境变量查看环境变量env--查看shell下的全局变量printenv--查看shell下的全局变量printenvHOME--显示变量HOME的值echo$HOME--显示变量HOME的值($)ls$HOME--在HOME变量... 查看详情

yarn的下载与安装

...报错如下:考虑到yarn的安装出错主要是由于没有进行全局安装或者安装路径有问题。用npm安装时较容易导致无法进行全局安装,为了避免这一问题,可以区yarn官网下载.msi文件。下载地址如下:yarn的.msi文件下载... 查看详情

修改npm安装的全局路径和配置环境变量

我之前安装npm时全是默认安装,模块全部安装在C盘了,今天心血来潮,把路径改到了D盘,结果改完后模块都不能识别了,都提示XX模块不是内部命令,这其实是环境变量配置的问题,我都是按照网上的教程改的环境变量,但是... 查看详情

3hdfs架构和yarn架构

...NodeManager单个节点上的资源管理;处理来自ResourceManager的命令;处理来自ApplicationMaster的命令Container对任务运行环境的抽象,封装了CPU、内存等多维资源以及环境变量、启动命令等任务运行相关的信息 查看详情