当前位置: 首页 > news >正文

asdf安装不同版本的nodejs和yarn和pnpm

安装asdf

安装nodejs

nodejs版本
在这里插入图片描述
目前项目中常用的是14、16和18
安装插件

asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git
asdf plugin-add yarn https://github.com/twuni/asdf-yarn.git

可以查看获取所有的nodejs版本

asdf list all nodejs

有很多找到自己的想要的即可
在这里插入图片描述
可以查看大版本下的小版本

asdf list all nodejs 14
asdf list all nodejs 16
asdf list all nodejs 18

在这里插入图片描述

这里挑选的版本为:14.21.3.、16.20.218.19.0
在这里插入图片描述

asdf list all yarn

在这里插入图片描述

asdf install nodejs 14.21.3
asdf install nodejs 16.20.2
asdf install nodejs 18.19.0
# asdf install yarn 1.22.21
# asdf install yarn 1.22.10

在这里插入图片描述
在这里插入图片描述
刚刚上面的方式是默认全局安装,将之前的卸载,可以选择本地本安装

# 将nodejs 14.21.3设置为全局
asdf global nodejs 14.21.3
# 卸载nodejs 14.21.3版本
# asdf uninstall nodejs 14.21.3
# 重新安装 asdf install nodejs 14.21.3
asdf local nodejs 14.21.3

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

建议使用pnpm包管理器,可以用pnpm管理多个nodejs版本,下篇文章就研究pnpm管理多个nodejs

pnpm安装以及管理多个nodejs版本

失败记录

安装yarn

nodejs18以上才可以

asdf global nodejs 18.19.0# nodejs<16.10,因为nodejs14太老了不支持,所以不安装其他包了
npm i -g corepack
# nodejs >=16.10
corepack enable
corepack prepare yarn@latest --activate # 这里需要指定版本,我制定了
asdf reshim nodejs 18.19.0

安装pnpm

nodejs18以上才可以

asdf global nodejs 18.19.0# nodejs<16.10,因为nodejs14太老了不支持,所以不安装其他包了
npm i -g corepack
# nodejs >=16.10
corepack enable
corepack prepare pnpm@latest --activate
asdf reshim nodejs 18.19.0

应该是yarn安装的插件比较老,一直安装不上
在这里插入图片描述

下面的方式有问题不推荐,还是只能安装一个yarn,只有一个nodejs版本可以用
这样就可以针对单个项目使用了,开启对应的yarn

asdf install nodejs 16.20.2
cd node16
asdf local nodejs 16.20.2
asdf install nodejs 18.19.0
cd node18
asdf local nodejs 18.19.0
# nodejs<16.10,因为nodejs14太老了不支持,所以不安装其他包了
npm i -g corepack
# nodejs >=16.10
corepack enable
corepack prepare yarn@latest --activate # 需要写清楚yarn版本号,这里使用的是4.0.2
asdf reshim nodejs 16.20.2asdf reshim nodejs 18.19.0

查看yarn版本https://github.com/yarnpkg/berry/releases
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/291920.html

相关文章:

  • Spring的事件监听机制
  • Zookeeper分布式命名服务实战
  • DEV-C++ ege.h库 绘图教程(六)
  • MySQL原理(一)架构组成之物理文件组成
  • 代码随想录算法训练营第三十七天 | 738.单调递增的数字、 968.监控二叉树
  • 【Django-ninja】django-ninja的hello world
  • ArrayList集合初始化长度是多少,初始化的时候分配内存空间吗
  • C语言数组:从入门到进阶
  • 9.回文数
  • 一分钟在SpringBoot项目中使用EMQ
  • SOME/IP 协议介绍(七)传输 CAN 和 FlexRay 帧
  • 与数组相关经典面试题
  • 数据结构与算法面试系列-02
  • CMake 完整入门教程(五)
  • pgsql中with子句和直接查询差别
  • Day 31 | 贪心算法 理论基础 、455.分发饼干 、 376. 摆动序列 、 53. 最大子序和
  • vue3使用is动态切换组件报错Vue received a Component which was made a reactive object.
  • React16源码: React中LegacyContext的源码实现
  • Gin 框架之jwt 介绍与基本使用
  • 从[redis:LinkedList]中学习链表
  • Prometheus+grafana配置监控系统
  • Linux之安装配置CentOS 7
  • 神经网络与深度学习Pytorch版 Softmax回归 笔记
  • git学习及简单maven打包
  • 如何用MapTalks IDE来发布网站?
  • 我用selenium开发了一个自动创建任务,解放重复性工作
  • 安卓11修改HDMI自适应分辨率
  • Linux实验记录:使用Apache的虚拟主机功能
  • 分布式空间索引了解与扩展
  • Set和Map的应用场景