Node.js管理工具NVM
nvm(Node Version Manager)是一个用于管理多个 Node.js 版本的工具。以下是 nvm 的使用方法和一些常见命令:
一、安装 nvm
-
下载 nvm:
- 地址:
https://github.com/coreybutler/nvm-windows/releases - 访问 nvm 的 GitHub 仓库或官方网站,找到适合你操作系统的安装包或脚本。
- 对于 Windows 用户,通常可以下载一个
.zip文件或.exe安装程序。 - 对于 macOS 或 Linux 用户,通常可以通过命令行脚本进行安装。

- 地址:
-
安装 nvm:
- 对于 Windows 用户,双击安装程序并按照提示完成安装。
- 对于 macOS 或 Linux 用户,打开终端并运行安装脚本。
-
验证安装:
- 安装完成后,打开终端或命令提示符,输入
nvm --version以验证 nvm 是否成功安装。
- 安装完成后,打开终端或命令提示符,输入
二、使用 nvm 管理 Node.js 版本
-
查看已安装的 Node.js 版本:
- 使用命令
nvm ls或nvm list来列出所有已安装的 Node.js 版本。
- 使用命令
-
安装新的 Node.js 版本:
- 使用命令
nvm install <version>来安装指定版本的 Node.js。例如,nvm install 14.17.0。
- 使用命令
-
切换到特定版本的 Node.js:
- 使用命令
nvm use <version>来切换到指定版本的 Node.js。例如,nvm use 14.17.0。
- 使用命令
-
设置默认 Node.js 版本:
- 使用命令
nvm alias default <version>来设置默认版本的 Node.js。这样,每次打开新的终端窗口时,都会自动切换到该版本。
- 使用命令
-
卸载 Node.js 版本:
- 使用命令
nvm uninstall <version>来卸载指定版本的 Node.js。
- 使用命令
-
查看当前使用的 Node.js 版本:
- 使用命令
nvm current来查看当前正在使用的 Node.js 版本。
- 使用命令
-
查看可安装的 Node.js 版本:
- 使用命令
nvm ls available来列出所有可安装的 Node.js 版本。
- 使用命令
三、配置 nvm
- 设置镜像源:
- nvm 支持配置镜像源以加速下载速度。例如,可以配置为使用国内镜像源(如淘宝 npm 镜像)。
- 在 Windows 上,找到 nvm 的安装目录,打开
settings.txt文件,并添加或修改node_mirror和npm_mirror字段。 - 在 macOS 或 Linux 上,可以通过修改
~/.nvm/nvm.sh或~/.bashrc等文件来配置镜像源。
编辑settings.txt文件:
* 使用文本编辑器打开`settings.txt`文件。
* 在文件末尾添加以下两行代码,以设置Node.js和npm的国内镜像源。这里以阿里云镜像为例:
```bash
node_mirror: https://npmmirror.com/mirrors/node/
npm_mirror: https://npmmirror.com/mirrors/npm/
```
或者,如果使用腾讯云镜像,则添加以下代码:
```bash
node_mirror: http://mirrors.cloud.tencent.com/npm/
npm_mirror: http://mirrors.cloud.tencent.com/nodejs-release/
```
* 保存并关闭`settings.txt`文件。
通过命令行设置(可选):
* 打开命令提示符或终端窗口。
* 输入以下命令来设置npm的镜像源(以阿里云镜像为例):
```bash
nvm npm_mirror https://npmmirror.com/mirrors/npm/
nvm node_mirror https://npmmirror.com/mirrors/node/
```
* 如果使用腾讯云镜像,则输入:
```bash
nvm npm_mirror http://mirrors.cloud.tencent.com/npm/
nvm node_mirror http://mirrors.cloud.tencent.com/nodejs-release/
```
* 注意:这些命令通常需要在NVM的安装路径下执行,或者确保NVM的环境变量已经正确配置。
查看当前镜像源:
* 对于npm的镜像源,可以在命令提示符或终端窗口中输入以下命令来查看:
```bash
npm config get registry
```
* 如果设置成功,应该会显示你设置的国内镜像地址。
- 配置环境变量:
- 在某些情况下,可能需要手动配置环境变量以确保 nvm 能够正常工作。例如,在 Windows 上,可能需要将 nvm 的安装路径添加到系统的 PATH 环境变量中。
- 在 macOS 或 Linux 上,通常不需要手动配置环境变量,因为 nvm 的安装脚本会自动处理这些设置。
四、注意事项
- 在使用 nvm 切换 Node.js 版本时,请确保关闭所有正在使用 Node.js 的进程,以避免潜在的问题。
- nvm 只会管理它自己安装的 Node.js 版本。如果你通过其他方式(如系统的包管理器)安装了 Node.js,nvm 将不会管理这些版本。
- 每个 Node.js 版本都有自己的 npm 版本和全局包目录。因此,当你切换到不同的 Node.js 版本时,npm 和全局包也会相应切换。
总之,nvm 是一个强大的工具,可以方便地管理多个 Node.js 版本。通过熟悉并掌握其使用方法,你可以更高效地开发和管理 Node.js 项目。
相关文章:
Node.js管理工具NVM
nvm(Node Version Manager)是一个用于管理多个 Node.js 版本的工具。以下是 nvm 的使用方法和一些常见命令: 一、安装 nvm 下载 nvm: 地址:https://github.com/coreybutler/nvm-windows/releases访问 nvm 的 GitHub 仓…...
云原生后端
云原生后端(Cloud-Native Backend)是指在云计算环境中,利用云原生技术(如容器、微服务、服务网格等)构建和部署后端应用程序的一种方法。以下是对云原生后端的详细讲解: 1. 定义 云原生是一种设计和构建应…...
充电宝哪个品牌值得买?2024年五款靠谱充电宝推荐
哪个品牌充电宝值得买?用过这么多款充电宝,个人还是觉得充电快、小巧便携的充电宝使用会更加的方便!在当今快节奏的生活中,手机已成为我们不可或缺的伙伴。然而,随着智能手机功能的日益强大,电池续航问题也…...
YOLOv11对比YOLOV8网络结构变化分析,帮助你真正的理解和学习yolo框架
本文在大佬的文章YOLOv11 | 一文带你深入理解ultralytics最新作品yolov11的创新 | 训练、推理、验证、导出 (附网络结构图)基础上做了一些补充。 一、YOLOv11和YOLOv8对比 二、YOLOv11的网络结构图 下面的图片为YOLOv11的网络结构图。 三、YOLOv11…...
弃用RestTemplate,RestClient真香!
在Spring框架的发展历程中,RestTemplate作为发起HTTP请求的同步API,曾经扮演着举足轻重的角色。然而,随着技术的不断进步和微服务架构的普及,RestTemplate的局限性逐渐显现,尤其是在处理高并发和异步请求时。因此&…...
electron-vite_10electron-updater软件更新
网很多electron-updater更新文章,这里只简单写一下演示代码; 为什么选择 electron-updater插件可以自动更新应用程序,同时支持多个平台;比官方要强; 官方的autoUpdater仅支持macOS 和 Windows 自动更新; 注意是自动,直接更新那种; 脚手架中是…...
React native之全局变量存储AsyncStorage
AsyncStorage是React native中对变量,对象进行全局存储,读取的异步使用对象。以key值进行存储。但是只能存储字符串数据,想存储对象,可把对象JSON进行序列化存储,读取的时候再转成JSON对象。 AsyncStorage.getItem()-…...
获取vue实例
需要注意的是,无论通过哪种方式获取元素,如果元素为 vue 组件,则需要在子组件中使用 defineExpose 进行暴露。 在父组件中,我们静态绑定 childRef: 在子组件中,我们需要通过defineExpose函数,手…...
基于Python实现电影推荐系统
电影推荐系统 标签:Tensorflow、矩阵分解、Surprise、PySpark 1、用Tensorflow实现矩阵分解 1.1、定义one_batch模块 import numpy as np import pandas as pddef read_and_process(filename, sep ::):col_names [user, item, rate, timestamp]df pd.read_cs…...
【linux】进程理解
🔥个人主页:Quitecoder 🔥专栏:linux笔记仓 目录 01.进程的基本概念进程的组成部分进程的特性进程的状态 02.PCBPCB的组成部分task_structtask_struct 的主要组成部分 03.进程属性查看进程 04.通过系统调用创建进程-fork初识工作…...
文件IO练习1
题目一: 1、使用fread和fwrite完成两个文件的拷贝,要求源文件和目标文件由外界输入 实现代码: #define LEN_BUF 256int main(int argc, const char *argv[]) {if(argc ! 3){fprintf(stderr,"程序入参输入有误\n");return -1;}FILE…...
c++ std::future 和 std::promise 的实现工作原理简介
为了便于理解 std::future 和 std::promise 的实现工作原理,我们可以创建一个简化的版本。这包括共享状态、Promise 设置值、Future 获取值的核心机制。我们的示例代码将实现 SimplePromise 和 SimpleFuture 两个类,二者通过一个共享状态实现线程间的通信…...
MATLAB(Octave)混电动力能耗评估
🎯要点 处理电动和混动汽车能耗的后向和前向算法模型(simulink),以及图形函数、后处理函数等实现。构建储能元数据信息:电池标称特性、电池标识符等以及静止、恒定电流和恒定电压等特征阶段。使用电流脉冲或要识别的等效电路模型类型配置阻抗…...
opencv学习:人脸识别器特征提取BPHFaceRecognizer_create算法的使用
BPHFaceRecognizer_create算法 在OpenCV中,cv2.face.LBPHFaceRecognizer_create()函数用于创建一个局部二值模式直方图(Local Binary Patterns Histograms,简称LBPH)人脸识别器。LBPH是一种用于人脸识别的特征提取方法࿰…...
HTML+CSS总结【量大管饱】
文章目录 前言HTML总结语义化标签常用标签H5新的语义元素H5的媒体标签\<embed> 元素(少用)\<object>元素(少用)\<audio>\<video> 元素包含关系iframe元素嵌入flash内容常用表单inputselect CSS总结权重样…...
Android开发之Broadcast Receive(广播机制)其实开发如此简单
什么是BroadcastReceiver BroadcastReceiver(广播接收器)用于响应来自其他应用程序或者系统的广播消息。这些消息有时被称为事件或者意图。本质上来讲BroadcastReceiver是一个全局的监听器,隶属于Android四大组件之一。 使用场景 1、 不同…...
Chromium 中chrome.cookies扩展接口c++实现分析
chrome.cookies 使用 chrome.cookies API 查询和修改 Cookie,并在 Cookie 发生更改时收到通知。 更多参考官网定义:chrome.cookies | API | Chrome for Developers (google.cn) 本文以加载一个清理cookies功能扩展为例 https://github.com/Google…...
excel筛选多个单元格内容
通常情况下,excel单元格筛选时,只筛选一个条件,如果要筛选多个条件,可以如下操作: 字符串中间用空格分隔就行。...
Instant 和 Duration 类(进行时间处理)
Instant Instant 类是 Java 8 中引入的,用于表示一个具体的时间点,它基于 UTC(协调世界时)时区。以下是 Instant 类的一些常用方法及其简要说明: now():获取当前的 Instant 对象,表示当前时间…...
Java每日面试题(Spring)(day19)
目录 Spring的优点什么是Spring AOP?AOP有哪些实现方式?JDK动态代理和CGLIB动态代理的区别?Spring AOP相关术语Spring通知有哪些类型?什么是Spring IOC?Spring中Bean的作用域有哪些?Spring中的Bean什么时候…...
挑战杯推荐项目
“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 - 个性化梦境…...
循环冗余码校验CRC码 算法步骤+详细实例计算
通信过程:(白话解释) 我们将原始待发送的消息称为 M M M,依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)(意思就是 G ( x ) G(x) G(x) 是已知的)࿰…...
【第二十一章 SDIO接口(SDIO)】
第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...
JavaScript基础-API 和 Web API
在学习JavaScript的过程中,理解API(应用程序接口)和Web API的概念及其应用是非常重要的。这些工具极大地扩展了JavaScript的功能,使得开发者能够创建出功能丰富、交互性强的Web应用程序。本文将深入探讨JavaScript中的API与Web AP…...
Java数值运算常见陷阱与规避方法
整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...
(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...
