如何通过nvm安装多版本nodejs?如果nodejs安装成功,但npm安装失败怎么办?

news2024/11/29 4:44:39

我们在开发项目的时候,最开始,是只有一个老的项目,老项目单独安装了node版本4.4.7,后来有了新项目,由于有两个项目,但是一个需要老一些版本的node,一个需要新版本的node,因此需要在两个版本之间进行切换,这时候应该怎么做呢?nvm可以很好的解决这个问题,我们一起来看看把。

同时在使用nvm安装nodejs的时候,会经常遇到node安装成功了,但是npm安装失败的情况,这时候我们又应该怎么解决呢?今天就来给大家讲讲这个问题

一、什么是nvm?

nvm就是nodejs version manage 叫做nodejs 版本管理,而nodejs有很多版本,场景如下:

1、而你手上开发的有多个项目又分别是不同的nodejs版本,咱们就可以用nvm轻松切换!

2、假设你正在开发的项目开始使用的nodejs版本是8.0,而现在因为某些原因,你需要升级 或者 降级 nodejs 版本,也可以使用 nvm 轻松切换

二、搭建步骤:

1、下载nvm https://github.com/coreybutler/nvm-windows/releases ,解压并且安装(安装nvm的地址可以自己随便选择一个位置,node地址设置为默认的:“C:\Program Files\nodejs”,这里需要注意网上很多说地址不能设为"C:\Program Files",安装路径不支持空格,否则node无法使用,实际测试并无影响)

2、打开 cmd , 输入 nvm -v,如下,表示安装成功
在这里插入图片描述
3、(重要) 设置 node 和 npm 镜像地址

在nvm安装目录,找到 setting.txt加上如下两行:

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

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

添加后如下图所示:
在这里插入图片描述
4、(重要) 安装你要的nodejs版本,必须是npm和nodejs都成功,因为有时候会npm或者nodejs不会下载成功,不成功的原因很多,前提必须按我的这个步骤,并且是之前没有装nodejs,或者是卸载干净了nodejs。通过nvm list available命令查看可下载的nodejs版本信息,根据需要下载对应的版本,LTS列表示稳定版本。

nvm install 版本号在这里插入图片描述

如上表示成功了,继续检验是否真的成功,进入nvm目录查看:

有红圈出来的内容就是成功的,如果没有就是不行的,就需要重新手动下载了
在这里插入图片描述
5、切换版本

nvm use 版本号

这样就好了,node和 npm都好了

**6、nvm命令:

1,nvm nvm list 是查找本电脑上所有的node版本

  • nvm list 查看已经安装的版本

  • nvm list installed 查看已经安装的版本

  • nvm list available 查看网络可以安装的版本

2,nvm install 安装最新版本nvm

3,nvm use ## 切换使用指定的版本node

4,nvm ls 列出所有版本

5,nvm current显示当前版本

6,nvm alias ## 给不同的版本号添加别名

7,nvm unalias ## 删除已定义的别名

8,nvm reinstall-packages ## 在当前版本node环境下,重新全局安装指定版本号的npm包

9,nvm on 打开nodejs控制

10,nvm off 关闭nodejs控制

11,nvm proxy 查看设置与代理

12,nvm node_mirror [url] 设置或者查看setting.txt中的node_mirror,如果不设置的默认是
https://nodejs.org/dist/

nvm npm_mirror [url] 设置或者查看setting.txt中的npm_mirror,如果不设置的话默认的是:
https://github.com/npm/npm/archive/.

13,nvm uninstall 卸载制定的版本

14,nvm use [version] [arch] 切换制定的node版本和位数

15,nvm root [path] 设置和查看root路径

16,nvm version 查看当前的版本

其实安装和使用的过程并不难,**但是在安装过程中,新一些的版本总是安装npm不成功,导致我一度以为是自己的安装出现问题或者环境变量和全局变量设置有问题,各种重装和设置,**后来发现有人说 目前发现 8.11以上版本的node版本对应的npm都没法自动安装,需要自己到npm官网(https://npm.taobao.org/mirrors/npm/) 下载手动安装对应的npm版本。下面就来讲讲遇到npm安装失败,我们应该怎么手动安装处理。

npm安装失败了怎么办??
如果你出现下面两种情况:
1.如果自己官网下载了对应的nodejs版本,但是又想用另外一个版本的npm(非nodejs自带的npm版本),
2.手动安装的nodejs成功了,但是出现下载npm安装失败的情况。

在这个时候就需要到npm的官网去下载npm的包了,那么可以用如下方法实现:

首先自己下载对应的npm (下载地址:https://npm.taobao.org/mirrors/npm/) ,进行配置,

或者也可以自己下载一个nodejs版本

(下载地址:https://nodejs.org/download/release/),

解压后复制到nvm目录,注意命名,如:v11.11.0,这样就不需要使用 nvm install 命令安装了

(用这个方法直接安装nodejs里面就已经有自带的npm了,可以直接用,自己不用另外再下载npm了)。

然后进入npm官网https://npm.taobao.org/mirrors/npm/下载nodejs对应版本的npm(注意:nodejs必须有对应的npm,不知道的就按你安装nodejs的时候,提示的下载的npm版本来下载就行)。

在这里插入图片描述
下载完成,将解压后的文件复制到,C:\dev\nvm\v12.18.0\node_modules目录下(一般就是 你的nvm安装目录\nodejs版本号\node_modules 这个目录),并重命名为npm(注意必须重命名为npm)
在这里插入图片描述
还需要将npm解压后的bin文件夹下的四个文件复制到C:\dev\nvm\v12.18.0目录下:
在这里插入图片描述
至此就安装成功了!

然后再用npm指令测试一下就可以了,如果出现npm不是指令或者其他报错,再出现安装就行了
在这里插入图片描述
感谢观看,喜欢的话点点赞点点关注谢谢哈。

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

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

相关文章

签名应用APP分发平台的微服务化部署是什么?其有哪些优势?

在信息技术的世界里,软件开发和部署的模式不断演进。从单体架构到服务化,再到今日备受瞩目的微服务架构。微服务化部署作为一种新兴的软件架构风格,正被越来越多的企业采用。它使得应用可以被分解成一套相互独立的最小服务单元。而“分发平台…

数据结构与算法编程题39

数组A[]中有 n 个整数,没有次序,数组从下标1开始存储,请写出顺序查找任一元素k的算法 ,若查找成功,则返回元素在数组中的位置;若查找不成功,则返回 0。 /*数组A[]中有 n 个整数,没有…

Citrix 退出中国市场!华为云以三大优势继续称霸桌面云江湖

文 | 智能相对论 作者 | 沈浪 又一家美国科技企业败走中国市场! 前不久,美国虚拟化巨头思杰系统(Citrix System)公司发布公告,“已决定停止在中国市场(包括香港地区和澳门地区)的所有新的商业…

JS小技巧,如何去重对象数组?

关于数组对象去重的业务场景,想必大家都遇到过类似的需求吧,这对这样的需求你是怎么做的呢。下面我就先和大家分享下如果是基于对象的1个属性是怎么去重实现的。 方法一:使用 .filter() 和 .findIndex() 相结合的方法 使用 Array.prototype.…

友菜友饭携手分众传媒,打造私厨到家生活新风尚

友菜友饭携手分众传媒 11月29日,友菜友饭与分众传媒签署战略合作协议,在全国重点城市全面引爆品牌力,携手打造全国领先的互联网数字化私厨平台,为中国5亿城市家庭解锁私厨到家服务新体验。 友菜友饭是全国领先的私厨到家平台&…

uniapp到底用什么ui框架最合适-关于uni-app的ui库、ui框架、ui组件

文章目录 直接看答案关于uni-app的ui库、ui框架、ui组件组件的概念扩展组件的选择uni ui如何使用uni ui 综上,官方对组件的使用建议是:附录:其他全端兼容ui库参考文章: 直接看答案 如果想自己纯手写,直接用内置组件。…

客户案例:SMC2威胁感知升级,保障金融行业邮件安全

客户背景 某基金公司是一家在业界享有广泛声誉的综合型资产管理公司,总部位于广州,在北京、上海、香港等地区均设有公司,业务范围遍布全球,凭借其卓越的投资业绩和专业的基金管理服务,赢得了广大投资者的高度认可。 该…

文献速递:多模态影像组学文献分享(基于多模式超声的临床放射学诺莫图,用于预测实质性低回声乳腺病变的恶性风险)

文献速递:多模态影像组学文献分享:(基于多模式超声的临床放射学诺莫图,用于预测实质性低回声乳腺病变的恶性风险) 01 文献速递介绍 作为世界上最常见的癌症,乳腺癌对人们的健康和生存构成了严重威胁(1)。鉴于其高转…

智慧物联可视化大屏赋能设备管理和城市运行

在智慧物联的时代,万物互联的网络正在构筑起一个智能化的世界。无论是家居设备、汽车、还是工业设备,都能通过互联网实现智能化管理和控制。随着物联网技术的发展,我们迅速步入了一个千姿百态的智慧时代。智慧物联逐渐渗透进我们的日常生活&a…

【银行测试】第三方支付功能测试点+贷款常问面试题(详细)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、第三方支付功能…

Linux快速配置拨号

在Linux上进行ADSL拨号配置,通常需要使用pppoeconf命令进行设置。pppoeconf是一个用于配置pppoe连接的工具,它可以帮助用户快速设置pppoe连接并生成配置文件。下面是一个详细的步骤指南,以帮助您在Linux上进行ADSL拨号配置。 步骤1&#xff…

windows下安装配置kafka

一、安装zookeeper 在使用Kafka之前,通常需要先安装和配置ZooKeeper。ZooKeeper是Kafka的依赖项之一,它用于协调和管理Kafka集群的状态。 ZooKeeper是一个开源的分布式协调服务,它提供了可靠的数据存储和协调机制,用于协调分布式…

java easyPOI导出一对多数据,设置边框,字体,字体大小

java easyPOI导出一对多数据,设置边框,字体,字体大小 需求总是千奇百怪,解决的方式也可以是多种多样。 今天碰到导出excel是一对多结构的,以往导出的数据都是一条一条的,所以采用的是比较方便简单的方法eas…

Stable Diffusion WebUI训练Lora测试XYZ显示例图

方式一 1.1 选择模型放入目录 将模型放入sd项目的models\Lora\目录,尽量保持和其他模型分开。 sd中显示如下: 1.2 脚本X/Y/Zplot选择 X轴类型:提示词搜索/替换 X轴值:NUM,000001,000002, 000003, 000004, 000005, 000006, 000007, 000008, 000009, 000010 Y轴类型:提…

CSS、JS文件无法正确加载至页面问题与解决

目录 1. 问题出现 2. 分析与解决 3. 总结 1. 问题出现 自己在写项目是时候,想启动浏览器查询首页面index.jsp的显示效果 预期效果应该是下面这样的: 但是实际上是这样的: 意思也就是说可能是关于CSS、JS相关的引入方面出了问题&#xff…

Mysql学习查缺补漏----02 mysql之DCL 数据控制语言

查看数据库里都有哪些用户。 使用root任何一个用户都可以登录。 本机登录。 也可以这样登录其他的机器。 、 修改user表。 刷新权限: 现在我们看到了只有本机才能登陆。 我们这样就可以限制这个mysql指定某台服务器登录。 详解忘记密码以及如何修改用户密码 我们…

ROS2教程08 ROS2的功能包、依赖管理、工作空间配置与编译

ROS2的功能包、依赖管理、工作空间配置与编译 版权信息 Copyright 2023 Herman YeAuromix. All rights reserved.This course and all of its associated content, including but not limited to text, images, videos, and any other materials, are protected by copyrigh…

Helplook VS Google Docs:一对一比较

还记得Google Docs在2006年一炮走红的时候吗?它很大程度地改变了协作方式,也减少了附加文件和频繁保存的麻烦。相比Microsoft Word,很多人更喜欢Google Docs的简单性。 但是时代也在不断地发展。像HelpLook这样的新竞争对手也可以提供先进的…

Android MVVM+coroutine+retrofit+flow+hilt

文章目录 Android MVVMcoroutineretrofitflowhilt概述依赖注入层数据层视图层模型视图层代码下载 Android MVVMcoroutineretrofitflowhilt 概述 代码结构: 依赖注入层 数据库: Module InstallIn(SingletonComponent::class) class DBModule {Singleto…

springboot -事务管理

事务 概念 事务是一组操作的集合,它是一个不可分割的工作单位,这些操作要么同时成功,要么同时失败。 操作 开启事务: start transaction / begin提交事务:commit回滚事务: rollback 注解 Transactional …