【nvm】下载安装及使用(包含windows和Linux)

目录

1、Windows版本下载及安装

2、Linux下载及安装

下载

安装

3、使用 


在不借助第三方工具的情况下切换node版本,只能卸载现有版本,安装需要的版本,这样显然很麻烦。而nvm就很好的帮我们解决了这个问题。

nvm(node.js version management)是windows系统使用的node版本管理工具,能快捷地安装或者切换不同版本的node。

注意!!如果已经安装node,需要卸载干净当前node,不然会报错或出现异常情况!!!

C:\Users\admin\AppData\Roaming\node下面的文件也要解决干净


1、Windows版本下载及安装

官网下载:https://github.com/coreybutler/nvm-windows/releases

建议选择手动安装版,zip包下载完成后进行解压缩,双击解压出来的nvm-setup.exe进行安装

设置nvm的安装路径

设置使用nvm安装的node时,node的路径(附加有详讲)

设置环境变量

此电脑-属性–高级系统设置-环境变量

新建 NVM_HOME 变量值为:D:\develop\nvm(即:nvm安装路径)
新建 NVM_SYMLINK 变量值为:D:\develop\nodeJs(即:nodeJs路径)

在Path后追加 %NVM_HOME%%NVM_SYMLINK% 属性变量

 检测是否安装成功,执行以下命令,若出现版本号,说明安装成功

nvm -v

修改镜像源

打开 D:\develop\nvm\settings.txt

复制粘贴以下代码

node_mirror: https://npmmirror.com/mirrors/npm/
npm_mirror: https://npmmirror.com/mirrors/node/

或者直接执行以下代码

nvm npm_mirror https://npmmirror.com/mirrors/npm/
nvm node_mirror https://npmmirror.com/mirrors/node/

2、Linux下载及安装

下载

方法1

 官网下载:https://github.com/nvm-sh/nvm

 

 然后传到Linux中的/root目录

方法2

进入/root目录,然后执行以下命令

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# 或者
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

方法3

进入/root目录,然后执行以下命令,目录需要更换成所需版本

wget https://github.com/nvm-sh/nvm/releases/tag/v0.39.7

安装

解压

# --strip-components 1: 是tar命令的选项,表示在解压缩过程中去除文件路径的第一个组件。
tar -zxvf nvm-0.38.0.tar.gz --strip-components 1  -C /root/nvm-0.39.7# 如果是 tar.gz 结尾的,使用 tar xvzf 解压
tar xvzf v0.39.7.tar.gz

配置环境

打开~/.bashrc

vim ~/.bashrc

在里面添加以下代码

export NVM_DIR="$HOME/home/software/nvm-0.39.0"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"

 重启配置

source ~/.bashrc

 检测是否安装成功,执行以下命令,若出现版本号,说明安装成功

nvm -v

3、使用 

查看当前nvm所支持的node版本

CURRENT:最新版本

LTS:稳定版本

nvm ls available
# 或者
nvm list available

安装所需版本的node

nvm install 版本号

查看已安装的node版本,*指向的就是当前版本

nvm ls
# 或者
nvm list

 切换node版本

nvm use 18.16.0

检测node和npm是否安装成功

node -v
npm -v

卸载已安装的node

nvm uninstall 18.13.0

4、附加

nvm将

当我们执行nvm use 18.16.0后,是安装在nvm安装的目录下的

当我们执行 nvm use 18.16.0 时,nvm的同级目录会产生一个快捷方式,这个快捷方式指向的就是当前使用的node版本的目录!

配置nodeJS

https://blog.csdn.net/qq_39921135/article/details/136032833?spm=1001.2014.3001.5501

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

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

相关文章

QT中调用python

一.概述 1.Python功能强大,很多Qt或者c/c开发不方便的功能可以由Python编码开发,尤其是一些算法库的应用上,然后Qt调用Python。 2.在Qt调用Python的过程中,必须要安装python环境,并且Qt Creator中编译器与Python的版…

OpenCV:计算机视觉领域的瑞士军刀

摘要 本文将深入探索OpenCV(开源计算机视觉库)的基本概念、应用领域、主要功能和未来发展。通过本文,读者将能够理解OpenCV在计算机视觉中的重要性,并掌握其基本使用方法。 一、引言 随着人工智能和机器学习技术的飞速发展&…

IDEA启动Springboot报错:无效的目标发行版:17 的解决办法

无效的目标发行版:17 的解决办法 一般有两个原因,一可能是本地没有安装JDK17,需要安装后然后在IDEA中选择对应版本;二可能是因为IDEA版本太低,不支持17,需要升级IDEA版本。然后在File->Project Struct…

未雨绸缪,才是真正的高手

由于电脑用了五年半,刚换了新型电脑主机,人老了摸索掌握新操作方法较困难,所以今天的网文作业只好从简,即本“人民体验官”推广人民日报官方微博文化产品《夜读:真正的高手,都懂得凡事提前一步》。 图&…

Flutter常用命令,持续更新

目录 前言 Flutter 常用命令 Dart 常用命令 adb 常用命令(用于 Android 开发) 前言 当在开发Flutter项目时,熟悉一些常用的命令是非常重要的。这些命令可以帮助你执行各种任务,从构建应用程序到调试和测试。以下是一些Flutte…

Draw.io | 强大并且免费的画图工具

前言 作为一个技术人,总是需要一个称手的画图工具,日常工作中,画的最多的图应该就是流程图,思维导图,如果开发时间比较久的话,可能还需要画架构图。刚开始的时候,我下载了各种工具,像…

Aigtek电压放大器的应用场合有哪些

电压放大器是一种主要用于信号处理的重要电子设备,它可以将输入的低电压信号放大到较高的输出电压水平。在各个应用领域中,电压放大器发挥着重要的作用。下面西安安泰点击将介绍电压放大器的应用场合。 通信系统:电压放大器在通信系统中具有重…

【打工日常】使用docker部署StackEdit编辑器-Markdown之利器

一、StackEdit介绍 StackEdit一款强大的在线Markdown编辑器,不仅具备卓越的写作功能,还支持实时预览、多设备同步等特性。 很多时候基于安全和信息保密的关系,建议放在自己的服务器或者本地linux去运行,这样会比较省心。 二、本次…

Nginx跳转模块location

一.location模块概述 1.定义 location块是server块的一个指令。作用:基于Nginx服务器接收到的请求字符串,虚拟主机名称(ip,域名)、url匹配,对特定请求进行处理。 2.三种匹配类别 精准匹配:l…

企业微信变更企业主体的流程

企业微信变更主体有什么作用?做过企业运营的小伙伴都知道,很多时候经常会遇到现有的企业需要注销,切换成新的企业进行经营的情况,但是原来企业申请的企业微信上面却积累了很多客户,肯定不能直接丢弃,所以这…

【Flink数据传输(一)】NetworkStack架构概述:实现tm之间的数据交换

文章目录 1. NetworkStack整体架构2. StreamTask内数据流转过程 NetworkStack提供了高效的网络I/O和反压控制 除了各个组件之间进行RPC通信之外,在Flink集群中TaskManager和TaskManager节点之间也会发生数据交换,尤其当用户提交的作业涉及Task实例运行在…

ubuntu20.04中配置Pyrep和CoppeliaSim

ubuntu20.04中配置Pyrep和CoppeliaSim 在Ubuntu20.04中配置 Pyrep ,实现应用Python语言的机器人在 Vrep(CoppeliaSim)中的虚拟仿真 一、安装CoppeliaSim 4.1 1.1 下载适配Ubuntu20.04的CoppeliaSim 4.1软件 下载链接:https://…

5.iframe

iframe 经典真题 iframe 框架有哪些优缺点&#xff1f;iframe 用来干什么的 iframe 介绍 iframe 称之为嵌入式框架&#xff0c;嵌入式框架可以把一个完整的网页内容嵌入到现有的网页中。 下面是一个 iframe 的简单示例&#xff1a; <body><p>iframe 示例<…

ssm+springmvc基于springboot的宠物领养系统的设计与实现_j5fk4

宠物领养系统主要是为了提高管理员的工作效率&#xff0c;满足管理员对更方便、更快、更好地存储所有信息和数据检索功能的要求。通过对多个类似网站的合理分析&#xff0c;确定了宠物领养系统的各个模块。考虑到用户的可操作性&#xff0c;经过深入调查研究&#xff0c;遵循系…

vue3中mockjs模拟获取数据

开发项目的时候&#xff0c;如果后端接口没有出来&#xff0c;前端工程师也不必非得等接口出来才进行下步开发。可以使用mock.js来模拟接口数据&#xff0c;以下就是使用vue3设置hook函数来封装axios请求&#xff0c;配合mock.js来实现的代码&#xff0c;mock的官网 Mock.js 一…

力扣算法Algorithm竞赛模板库(codeforces-go):含了算法竞赛中常用的数据结构和算法实现,助力开发者更高效地解决问题

1.算法Algorithm竞赛模板库&#xff08;codeforces-go&#xff09; 算法竞赛模板库&#xff0c;为算法竞赛爱好者提供了一系列精心设计的算法模板。这个库包含了算法竞赛中常用的数据结构和算法实现&#xff0c;助力开发者更高效地解决问题 一个算法模板应当涵盖以下几点&…

C语言------字符串函数(2)

1.strcat函数功能实现 ​ char* mystrcat(char* dest, const char* src) {assert(dest);assert(src);char* ret dest;//找到目标空间里面的斜杠0的位置&#xff0c;再追加while (*dest ! \0){dest;}while ((*dest *src)){;}return ret; } int main() {char arr1[20] "…

【信息系统项目管理师】--【信息技术发展】--【现代化创新发展】--【物联网】

文章目录 第二章 信息技术发展2.2 新一代信息技术及应用2.2.1 物联网1.技术基础2.关键技术3.应用和发展 第二章 信息技术发展 信息技术是在信息科学的基本原理和方法下&#xff0c;获取信息、处理信息、传输信息和使用信息的应用技术总称。从信息技术的发展过程来看&#xff0c…

Android 圆环带刻度条进度动画效果实现

效果图 需求是根据传感器做一个重力球效果&#xff0c;先实现了动画后续加上跟传感器联动. 又是摆烂的一天&#xff0c; 尚能呼吸&#xff0c;未来可期啊 View源码 package com.android.circlescalebar.view;import android.content.Context; import android.content.res.Typ…

C++ //练习 7.58 下面的静态数据成员的声明和定义有错误吗?请解释原因。

C Primer&#xff08;第5版&#xff09; 练习 7.58 练习 7.58 下面的静态数据成员的声明和定义有错误吗&#xff1f;请解释原因。 //example.h class Example{public:static double rate 6.5;static const int vecSize 20;static vector<double> vec(vecSize); };//e…