百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

Windows平台上Node版本升级过程

bigegpt 2024-09-01 15:14 5 浏览

最近在学习React过程中使用脚手架create-react-app搭建开发环境时遇到Node版本过低问题,于是乎想着升级一下Node版本,度娘找了篇文章就跟着操作起来,具体是一下几个步骤

1、执行 npm cache clean -f 清除npm缓存

2 执行 npm install -g n 安装n模块,n模块用来管理nodejs的版本

3 执行 n stable 使用n模块将Node版本切换成最新稳定版

执行到第2步报了如下错误


查阅相关资料后发现此种更新方式只适合Linux系统上更新node版本,在Windows系统中是不行的,经查找后发现有好几种Node管理工具,这里简单记录下几个工具的使用

  • nvm(Node Version Manager

Releases · coreybutler/nvm-windows · GitHub从这里下载安装文件,值得注意的是如果之前有安装过Node的话需要先卸载,再安装NVM


下载完成之后,双击nvm-setup.exe按照默认方式安装即可。

以下是其他人遇到的一些坑,不过我都没遇到,具体可以参考下


添加淘宝镜像,打开setting.txt ,具体位置取决于前面NVM安装的位置,默认安装是在

C:\Users\{用户}\AppData\Roaming\nvm下

增加以下两行

node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/

NVM常用命令有以下这些

nvm                  // 提示nvw下的相关命令
nvm ls               // 查看已安装node版本
nvm install vXX      // 安装对应vXX版本的node
nvm uninstall vXX    // 卸载对应vXX版本的node
nvm use xxx          // 选择使用XXX版本  lts(长期支持版) 、stable(稳定版)latest(最新版) 、具体某个版本号
nvm current         //显示当前使用的node版本
nvm root [path]   //设置下载的node版本存放位置

在执行nvm use vXX 切换版本时,报了如下错误


1、检查安装路径是否有空格和中文,同时检查setting.txt文件里面的路径是否一致

2、以管理员权限运行CMD或者PowerShell



  • nodist

「链接」下载installer

双击NodistSetup-v0.9.1.exe安装,已经安装过node需要先卸载再安装nodist

node的版本和nodist的版本是对应的


nodist   									#列出所有已安装版本并高亮激活版本
nodist global 4.x 	#设置全局版本为4.x
nodist local 4.x 			#设置当前目录及其子目录node版本为4.x
nodist env 4.x   			#设置当前终端环境node版本
nodist npm global 3.x  #设置全局npm版本
nodist npm global match  #根据当前环境(终端、目录、全局)的node版本自动选择匹配的npm版本
nodist npm local 2.x #设置当前目录NPM版本为2.x
nodist npm env 2.x  #设置当前终端环境NPM版本为2.x
nodist dist  #列出所有可用的Node版本
nodist + 4.x  #检查是否已安装某个版本,没有则安装
nodist + all   #安装所有
nodist - 4.1.1 #移除某个版本
nodist --help #查看帮助nodist文档

  • gnvm

1、下载gnvm(64位)

下载地址: https://raw.githubusercontent.com/Kenshin/gnvm-bin/master/64-bit/gnvm.exe

2、把gnvm所在目录放入系统变量,目的是为了在任何地方都能执行gnvm命令

在gnvm.exe同级目录增加 .gnvmrc文件,增加如下内容

globalversion: 5.0.1
latestversion: 5.10.1
noderoot: /node/ 此处修改为你保存gnvm的目录
registry: http://npm.taobao.org/mirrors/node/

3、打开cmd,执行gnvm version,出现版本信息说明安装成功

4、gnvm search 搜索可用的node版本,支持模糊搜索,例如gnvm 8.*.*


5、gnvm install 安装指定node版本


6、gnvm list 查看本地可用的node版本


7、gnvm use 使用指定版本node


8、安装指定版本 npm,先gnvm config registry TAOBAO切换下载源淘宝镜像仓库


以下为gnvm操作命令

config       Setter and getter .gnvmrc file
use            Use any the local already exists of Node.js version
ls               Show all [local] [remote] Node.js version
install        Install any Node.js version
uninstall    Uninstall local Node.js version and npm
update       Update Node.js latest version
npm           NPM version management
session      Set any local Node.js version to session Node.js version
search       Search and Print Node.js version detail usage wildcard mode or regexp mode
node-version Show [global] [latest] Node.js version
reg             Add config property [noderoot] to Environment variable [NODE_HOME]
version      Print GNVM version number

以上仅为gnvm简单操作,更详细操作请参考官方文档,官网地址http://ksria.com/gnvm/

相关推荐

LangChain4j如何自定义文档转换器实现数据清洗?

LangChain4j提供了3种RAG(Retrieval-AugmentedGeneration,检索增强生成)实现,我们通常在原生或高级的RAG实现中,要对数据进行清洗,也就是将外接...

Java 8 Stream API 详解(java stream.)

Java8StreamAPI详解一、概述在Java8中,StreamAPI是一个重要的新特性。它为处理集合(如List、Set等)中的元素提供了一种高效且富有表现力的方式。Str...

Java修炼终极指南:185 使用 Stream 过滤嵌套集合

这是面试中的一个经典问题,通常从一个模型开始,如下所示(我们假设集合是一个List):publicclassAuthor{privatefinalStringname;pri...

java8的stream使用小示例(java stream())

据JetBrains发布的2021年开发者生态系统调查,Java8在java使用的版本中仍然是当前最流行的版本。72%的专业开发人员使用Java8作为其在java开发中主要编程语言版本。现...

Node.js Stream - 实战篇(node.js in action)

本文转自“美团点评技术团队”http://tech.meituan.com/stream-in-action.html背景前面两篇(基础篇和进阶篇)主要介绍流的基本用法和原理,本篇从应用的角度,介...

Java Stream:集合处理的api(java 集合操作)

JavaStream流:高效集合处理的函数式编程利器一、什么是JavaStream?Java8引入的StreamAPI是一套用于处理集合数据的流式编程接口,通过函数式风格(无副作用的...

去除 List 中的重复元素,你知道几种实现方法?

去除List中重复元素,这在实际编程或面试中经常遇到,每个人都有习惯的写法吧,这里抛砖引玉,汇总了一些实现方案,开拓思路。准备数据假设数组中有10个数据,可能有重复,需要将重复的数据从数组中去掉。pu...

Java开发者必看!Stream流式编程10个爆款技巧,让你代码优雅飞起

为什么你的Java代码总像拧巴的麻绳?掌握这10个Stream实战技巧,代码效率与优雅度将产生质的飞跃。以下案例均来自真实电商系统场景,带你感受流式编程的降维打击!一、过滤与映射组合拳(Filter...

leetcode每日一题之存在重复元素(存在重复元素 iii)

题:给定一个整数数组,判断是否存在重复元素。如果存在一值在数组中出现至少两次,函数返回true。如果数组中每个元素都不相同,则返回false。比如:输入:[1,2,3,1]输出:true...

告别for循环!揭秘Stream API如何让你的代码简洁度提升300%

一、当传统循环遇上现代需求真实场景复现:某电商平台需要处理10万条订单数据,要求:筛选出金额>500的订单提取用户ID并去重统计VIP用户数量传统实现方案://常规写法Set<Long...

Java中List去重的N种方法:从基础到优雅

Java中List去重的N种方法:从基础到优雅在日常的Java开发中,我们经常会遇到需要对List集合去重的情况。无论是为了清理重复的数据,还是为了优化算法性能,掌握多种去重方式都是一项非常实用的技能...

Java Stream流没用过?常用高频方法

概念Stream流是Java8添加的以一种链式调用的方法处理数据,主要侧重于计算。具有以下相关特点代码简洁链式调用Stream常用方法1.将数组变为当作List操作String[]strArr=...

核医学专业名词索引(M-R)(核医学重点归纳)

M吗啡(morphia)埋藏式心律转复除颤器(implantablecardioverterdefibrillator,ICD)麦角骨化醇(VD2,calciferol)脉冲堆积(pulsepi...

CodeMeter 新版发布(codesigner下载)

威步于2022年8月4日发布CodeMeter7.50及CodeMeter软件保护套装11.10,以下为新版内容。CodeMeterRuntime7.50StreamingSIMDExten...

世界上最小的五轴铣床Pocket NC(最小的五轴加工中心)

PocketNC,由MIT学生研制,还有说法是这款产品的设计者是来自美国蒙大拿州的一对极客夫妻。目前主要有两款产品:PocketNCV2-50,9000美元;PocketNCV2-10,60...