nvm安装教程及使用nvm管理多个node版本

文章目录

  • 前言
  • 一、nvm 安装教程
    • 温馨提示
    • macOS/Linux
    • Windows
  • 二、安装 node


前言

工作中,你可能会遇到以下场景:

  • 我想使用 pnpm 命令安装依赖,但是在使用 pnpm 命令时提示如下
$ pnpm -v
ERROR: This version of pnpm requires at least Node.js v16.14
The current version of Node.js is v14.17.2
Visit https://r.pnpm.io/comp to see the list of past pnpm versions with respective Node.js version support.

根据错误提示告知我们使用 pnpm 至少需要 nodejs v16.14 之后的版本才可以使用,目前的版本 v14.17.2 不支持,但是现有的 nodejs 版本已经在项目中使用到,盲目升级会给项目带来某些不可预料的问题,甚至导致项目无法启动等问题。

出于此类问题,我们想保留原有的 nodejs 版本,然后再额外安装我们需要的版本,并且能实现随时切换,这就是 nvm 能帮我们做到的功能,实现 node 的版本管理。


一、nvm 安装教程

nvm(Node Version Manager)本身并不是通过 npm 全局安装的。nvm是一个用于管理Node.js版本的工具,它通常是通过特定的安装脚本或包管理器(如Homebrew对于macOS)来安装的,而不是通过npm

温馨提示

  1. 博主已先踩坑,npm 全局安装 nvm,并遇到了 This is not the package you are looking for:please go to http://nvm.sh 的错误。这里需要使用命令行先卸载全局的 nvm。
npm uninstall -g nvm
  1. 安装 nvm 之前一定要先卸载已经安装的 nodejs,直接在应用和功能中卸载程序即可。
    卸载nodejs
    以下是如何正确安装 nvm 的一般步骤:

macOS/Linux

在终端使用curl或wget命令来安装nvm。例如:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh

或者

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh

注意:请将v0.39.1替换为nvm的最新版本号

安装完成后,你可能需要重启终端或重新加载配置文件,以使nvm生效。

Windows

下载

通常建议使用 nvm-windows,这是一个专门为 Windows 设计的 nvm 版本。你可以从GitHub 上的 nvm-windows 页面 下载。

博主选择了一个最近的 v1.1.12 的版本进行安装。
nvm安装包
安装

一路默认安装即可,默认安装不需要配置环境变量,如果想指定安装路径参考下图,需要设置环境变量
nvm安装路径修改
nodejs存储路径
安装完成后,以管理员身份运行打开 cmd 输入nvm -v 来检查nvm是否已成功安装,并查看其版本号。

查看nvm版本

二、安装 node

  1. nvm list available 查看可安装的 node 版本
    查看可安装node版本
    在Node.js中,LTS是“Long Time Support”的缩写,即长期支持版本。这意味着这个版本的Node.js将会得到较长时间的维护和更新,以确保其稳定性和安全性,因此建议安装 LTS 版本的 Node.
  2. 执行 nvm install 18.20.3 安装,或者 nvm install 14 安装指定版本的 node
  3. nvm ls 查看已经安装的 node 版本
    安装 node
  4. nvm use 18.20.3 切换 node 版本
  5. node -v 查看 node 当前的版本
    切换指定版本node
    前言中提到的全局安装 pnpm 之后执行 pnpm 命令抛错解决
    安装pnpm

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

移动云主机ECS搭建Kubernetes集群:详细步骤与指南

目录 云主机 ECS:云计算的强大引擎什么是云主机ECS?为何选择云主机ECS? 使用移动云ECS进行Kubernetes集群搭建1. 环境准备2. 安装步骤2.1 在每一个节点上执行的操作2.1.1 系统准备2.1.2 安装Docker2.1.3 安装Kubernetes的安装组件 2.2 在Mast…

chrome浏览器驱动下载

跑自动化的时候,需要打开谷歌浏览器,这个时候提示浏览器驱动找不到咋办呢? 1、网上搜索找到了这篇文章:https://www.cnblogs.com/laoluoits/p/17710501.html;按照文章介绍, 首先找到:CNPM Bin…

捷报!恒瑞医药ADC创新药SHR-A1921卵巢癌适应症拟纳入突破性治疗品种公示

近日,恒瑞医药自主研发的TROP-2抗体偶联药物(antibody-drug-conjugate, ADC)注射用SHR-A1921用于治疗铂耐药复发上皮性卵巢癌、输卵管癌或原发性腹膜癌适应症被国家药品监督管理局药品审评中心拟纳入突破性治疗品种公示名单。今年3月&#xf…

内网安全--域渗透准备知识

目录 知识点: 0x01 0x02 0x03 系列点: Linux主机信息收集 windows主机信息收集 知识点: 0、域产生原因 1、内网域的区别 2、如何判断在域内 3、域内常见信息收集 4、域内自动化工具收集 -局域网&工作组&域环境区别 -域…

Linux如何在目录下灵活创建、浏览、删除百万个文件

文章目录 一、创建百万级小文件1、单核CPU情况2、多核CPU情况3、执行效率对比3.1、单核的顺序执行3.2、多核的并发执行 二、如何列出/浏览这些文件1、查看目录下文件的数量2、列出?3、ls -f(关闭排序功能)3.1、执行效率对比 4、通过重定向导入…

HiWoo Box边缘计算网关

​在数字化浪潮汹涌的今天,边缘计算网关成为了连接物理世界与数字世界的桥梁,其重要性日益凸显。HiWoo Box,作为一款功能强大的边缘计算网关,不仅具备了传统网关的基本功能,更在数据采集、处理、传输等方面展现出了卓越…

“二叉堆:不是,啊?”

目录 前言一、堆的概念及结构堆的性质:堆的结构:最大堆最小堆堆顶注意 二、堆的实现1.初始化堆2. 堆的插入什么是堆的向上调整算法? 3.堆的删除什么是堆的向下调整算法? 4.获取堆顶的数据5.获取堆的数据个数6.堆的判空7.堆的销毁 三、建堆的时…

一文了解安卓内存抖动

目录 目录一、什么是内存抖动?1.1 Android里的内存抖动1.2 如何直观查看这种现象1.3 内存抖动带来的风险 二、如何避免内存抖动 目录 一、什么是内存抖动? 在程序里,每创建一个对象,就会有一块内存分配给它,每分配一…

超详细的前后端实战项目(Spring系列加上vue3)前后端篇(四)(一步步实现+源码)

兄弟们,继昨天的代码之后,继续完成最后的用户模块开发, 昨天已经完成了关于用户的信息编辑页面这些,今天再完善一下, 从后端这边开始吧,做一个拦截器,对用户做身份校验, 拦截器 这…

燃数科技前端25-40K*14薪一面超简单,下周二面啦

​​​​​​​ 文章末尾扫描二维码领取地址 一面 1、自我介绍 2、低代码如何设计的 3、react路由原理 4、react生命周期 5、什么是回调地狱,如何解决 6、jwt和session有什么区别 7、js文件相互引用有什么问题?如何解决 8、一个很大的json文件…

安卓手机APP开发__平台的架构

安卓手机APP开发__平台的架构 目录 概述 安卓软件栈 Linux内核 硬件抽象层(HAL) 安卓运行时 原生的C/C代码库 Java API框架 系统APP 概述 安卓是一个开源的,基于Linux的软件栈,它创建一个设备和形式因素的很宽的矩阵。 下图展示了安卓平台的所有…

全方位质量保障!龙蜥在内核、软件包、容器镜像、三方模块的 CI 工程实践

编者按:在海量的代码测试和构建中, CI(Continuous Integration)在代码提交阶段,对提高软件质量和开发效率起到了至关重要的作用。2023 龙蜥操作系统大会全面繁荣开发者生态分论坛上,龙蜥社区 QA SIG Maintainer、联通数科 CUlinux…

YOLOv8 Closing dataloader mosaic

在使用YOLOV8训练时,epoch训练到最后10次出现”Closing dataloader mosaic",又不是报错,但又不往下进行训练,有点懵了,后面经过了解,Yolov8是默认设置close_mosaic10,需要把它修改为0; clo…

什么是HTTP代理?适用于哪些场景?

HTTP代理是一种网络代理服务器,它主要用于处理HTTP协议的请求和响应。HTTP代理充当客户端(如浏览器)和目标服务器之间的中介,允许客户端通过代理服务器来发送HTTP请求,并接收来自服务器的响应。HTTP代理可以分为正向代…

C++ 虚函数和纯虚函数

虚函数 #include <iostream> using namespace std; class Vehicle //交通工具 { public:void run() const{cout << "run a vehicle. " << endl;} }; class Car : public Vehicle //汽车 { public:void run() const{cout << "run a c…

报名倒计时!「飞天技术沙龙-CentOS 迁移替换专场」参会指南

为帮助广大用户诊断 CentOS 迁移替换过程中的疑难杂症&#xff0c;「飞天技术沙龙-CentOS 迁移替换专场」将于 5 月 29 日&#xff08;周三&#xff09;在北京举办&#xff0c;将围绕如何在确保服务的连续性和稳定性的前提下实现平滑迁移及如何最大限度地利用现有资源前提下确保…

R可视化:另类的箱线图

介绍 方格状态的箱线图 加载R包 knitr::opts_chunk$set(echo TRUE, message FALSE, warning FALSE) library(patternplot) library(png) library(ggplot2) library(gridExtra)rm(list ls()) options(stringsAsFactors F)导入数据 data <- read.csv(system.file(&qu…

营销短信XML接口对接发送示例

在现代社会中&#xff0c;通信技术日新月异&#xff0c;其中&#xff0c;短信作为一种快速、简便的通信方式&#xff0c;仍然在日常生活中占据着重要的地位。为了满足各种应用场景的需求&#xff0c;短信接口应运而生&#xff0c;成为了实现高能有效通信的关键。 短信接口是一种…

使用RAG和文本转语音功能,我构建了一个 QA 问答机器人

节前&#xff0c;我们星球组织了一场算法岗技术&面试讨论会&#xff0c;邀请了一些互联网大厂朋友、参加社招和校招面试的同学. 针对算法岗技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备、面试常考点分享等热门话题进行了深入的讨论。 汇总合集&…