一个用于管理多个 Node.js 版本的安装和切换开源工具

大家好,今天给大家分享一个用于管理多个Node.js版本的工具 NVM(Node Version Manager),它允许开发者在同一台机器上安装和使用不同版本的Node.js,解决了版本兼容性问题,为开发者提供了极大的便利。

在开发环境中,特别是在处理多个项目时,每个项目可能依赖于不同版本的 Node.js,NVM 提供了一个简单有效的方式来处理这种情况,无需重新安装整个系统环境。

项目介绍

  • 功能:NVM的主要功能是允许用户在同一台机器上安装和切换多个版本的Node.js,支持版本管理和切换,避免了版本冲突,确保每个项目都可以使用其所需的Node.js版本。

  • 用途:NVM主要用于简化Node.js版本管理,使得开发者可以为不同的项目选择合适的Node.js版本,无需全局更改,提高了开发效率和项目的兼容性。

安装使用

下载安装

1. MacOS 和 Linux

安装 nvm: 你可以通过 Shell 脚本来安装 nvm。打开终端,然后运行下面的命令:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

或者使用 wget:

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

这里使用的是 nvm 的最新稳定版本 v0.39.7,如果你希望安装特定版本,可以修改 URL 中的版本号。

加载 nvm: 安装完成后,你需要重启终端或运行以下命令来加载 nvm:

export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm

或者在你的 shell 配置文件(如 .bashrc, .zshrc 等)中加入上面的命令,以便每次打开终端时自动加载 nvm。

2. Windows

下载 nvm-windows: 访问 GitHub 发布页面,下载最新版本的 nvm-windows。

安装 nvm-windows: 运行下载的安装程序,按照提示进行安装。在安装过程中,你可以选择 nvm 的安装路径和 node 的安装路径。

环境变量: 安装完成后,你可能需要将 nvm 的 bin 目录添加到你的系统 PATH 环境变量中。这通常在安装过程中会被自动添加,但如果未被添加,你需要手动进行。

验证安装: 打开一个新的命令提示符窗口,输入 nvm 命令,如果正确安装,你应该能看到 nvm 的帮助信息。

使用示例

1.列出可安装的 Node.js 版本

nvm ls-remote

这将列出所有可安装的 Node.js 版本。

2.安装特定版本的 Node.js

假设你想安装 Node.js 的 16.14.2 版本,你可以运行:

nvm install 16.14.2

3.设置默认版本

如果你想让这个版本成为你的默认版本,可以运行:

nvm alias default 16.14.2

4.切换 Node.js 版本

当你需要使用另一个版本时,可以使用 nvm use 命令来切换:

nvm use 14.19.0

5.查看已安装的 Node.js 版本

nvm ls

这将列出所有你已经安装的 Node.js 版本。

6.删除已安装的 Node.js 版本

如果不再需要某个版本,可以使用 nvm uninstall 命令来删除:

nvm uninstall 14.19.0

7.在项目中使用特定版本

在项目目录中,你可以使用 .nvmrc 文件来指定项目需要的 Node.js 版本。创建一个 .nvmrc 文件并在其中写入版本号,例如:

touch .nvmrc
echo "16.14.2" > .nvmrc

当你在这个目录下运行任何命令时,nvm 会自动切换到指定的版本。

8.清除缓存

如果你遇到问题,可以尝试清除 nvm 的缓存:

nvm cache clear

项目地址

https://github.com/nvm-sh/nvm

一个用于管理多个 Node.js 版本的安装和切换开源工具 - BTool博客 - 在线工具软件,为开发者提供方便

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

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

相关文章

路网双线合并单线——ArcGISpro 解决方法

路网双线合并成单线是一个在地图制作、交通规划以及GIS分析中常见的需求。双线路网定义:具有不同流向、不同平面结构的道路。此外,车道数较多的道路(例如,双黄实线车道数大于4的道路)也可以视为双线路网,本…

iPhone 如何修改锁屏密码?修改密码的具体步骤总结

修改 iPhone 锁屏密码 当你还记得当前设置的锁屏密码时,想要修改密码就非常的简单了,只需要简单的点几下就可以重新设置新密码,下面是具体的操作步骤: 首先我们进入设置应用程序,然后找到“面容 ID 与密码”。 然后需…

(01)Unity使用在线AI大模型(使用百度千帆服务)

目录 一、概要 二、环境说明 三、申请百度千帆Key 四、使用千帆大模型 四、给大模型套壳 一、概要 在Unity中使用在线大模型分为两篇发布,此篇文档为在Python中使用千帆大模型,整体实现逻辑是:在Python中接入大模型—>发布为可传参的…

护眼台灯的功能作用有哪些?深挖台灯护眼是真的吗

随着现代生活方式的改变,孩子们面临着越来越多的视力挑战。在近视学生中,近10%为高度近视,且占比随年级升高而增长。幼儿园6岁儿童中有1.5%为高度近视,而高中阶段则达到了17.6%。为了守护孩子们的视力健康,在科技飞速发…

无符号数和有符号数的转换

1、有符号数转换成无符号数 1.1 例一 首先,我们需要清楚 C语言中负数是以补码的形式进行存储的。 示例:负数-1, (此处,假设是8位二进制表示) 对应正数的原码:0000 0001;取反&…

通俗易懂多图透彻讲解二叉树的遍历--前序, 中序和后序

二叉树的遍历是一个数据结构中经常会遇到的知识点, 具体又分为前序, 中序和后序三种. 什么是树? 先来理解一下什么是树, 从一个我们相对熟悉的家谱树(Family Tree)说起吧. 家族的根是爷爷, 然后生了两个娃, 大伯和你爸爸. 继续往下, 有堂哥堂姐, 还有你以及你妹, 等等. 一个…

简化流程,强化协作——揭秘可道云TeamOS文档审批的实用魅力

在团队协作的过程中,文档审批是确保信息安全和流程规范的重要环节。然而,传统的文档审批流程往往繁琐且僵化,难以满足团队快速响应和灵活协作的需求。 可道云teamOS的文档审批功能,以其独特的灵活性和便捷性,为团队带…

java——Junit单元测试

测试分类 黑盒测试:不输入代码,给输入值,看程序能够给出期望的值。 白盒测试:写代码,关注程序具体执行流程。 JUnit单元测试 一个测试框架,供java开发人员编写单元测试。 是程序员测试,即白…

PBT激光穿透率测量仪

在现代材料科学与工业制造领域,激光技术以其高精度、高效率和非接触性等特点,成为了不可或缺的测量与加工手段。其中,PBT(聚对苯二甲酸丁二醇酯)作为一种重要的热塑性工程塑料,因其优异的机械性能、耐热性和…

嵌入式全栈设计思路:STM32G4+ChibiOS+FreeRTOS+PID控制+PFC算法构建高效智能电源管理系统(附代码示例)

智能电源管理系统是一个基于STM32G4微控制器的高性能数字电源控制解决方案。本项目旨在设计一个功能全面、高效稳定的电源管理系统,可广泛应用于工业控制、新能源、通信设备等领域。 1.1 系统主要特点 高精度数字电源控制:利用STM32G4的高性能ADC和定时器,实现精确…

HTML5+CSS3小实例:纯CSS实现奥运五环

实例:纯CSS实现奥运五环 技术栈:HTML+CSS 效果: 源码: 【HTML】 <!DOCTYPE html> <html lang="zh-CN"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-sca…

网页数据抓取:融合BeautifulSoup和Scrapy的高级爬虫技术

网页数据抓取&#xff1a;融合BeautifulSoup和Scrapy的高级爬虫技术 在当今的大数据时代&#xff0c;网络爬虫技术已经成为获取信息的重要手段之一。Python凭借其强大的库支持&#xff0c;成为了进行网页数据抓取的首选语言。在众多的爬虫库中&#xff0c;BeautifulSoup和Scrap…

在Android Jetpack Compose中实现夜间模式

在Android Jetpack Compose中实现夜间模式 随着用户对夜间模式需求的增加,Android开发者需要掌握如何在应用中实现这一功能。Jetpack Compose作为现代Android UI工具包,提供了简便且灵活的方式来实现夜间模式。本文将详细介绍如何在Jetpack Compose中实现夜间模式,包括配置…

Linux系统之玩转fortune命令

Linux系统之好玩的fortune命令 一、fortune命令介绍1.1 fortune简介1.2 fortune中英文 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、检查本地环境3.1 检查本地操作系统版本3.2 检查系统内核版本 四、fortune英文版的使用4.1 安装fortune英文版4.2 命令帮助4.3 fortu…

安卓手机刷入Magisk面具教程

手机如果想获取 Root 权限&#xff0c;刷入面具是必要的做法。本期文章将会教你如何刷入 Magisk 面具。 准备工作 Magisk: 关注微信公众号 heStudio Community回复 magisk 获取下载链接。第三方 Recovery&#xff08;官方 Recovery 能玩出什么花样&#xff1f;&#xff1f;&a…

PDM系统:企业产品数据管理、PDM系统哪个好

PDM系统&#xff1a;企业产品数据管理、PDM系统哪个好 在当今这个数据驱动的时代&#xff0c;企业产品数据管理&#xff08;PDM&#xff09;系统已成为企业提升竞争力、加速产品创新、优化生产流程的关键工具。PDM系统不仅是一个技术平台&#xff0c;更是企业实现数字化转型的重…

防火墙负载分担,带宽策略

一、实验拓扑图 二、实验要求 12&#xff0c;对现有网络进行改造升级&#xff0c;将当个防火墙组网改成双机热备的组网形式&#xff0c;做负载分担模式&#xff0c;游客区和DMZ区走FW3&#xff0c;生产区和办公区的流量走FW1 13&#xff0c;办公区上网用户限制流量不超过100M&a…

昇思25天学习打卡营第23天|基于MobileNetv2的垃圾分类

基于MobileNetv2的垃圾分类 1、实验目的 了解熟悉垃圾分类应用代码的编写&#xff08;Python语言&#xff09;&#xff1b;了解Linux操作系统的基本使用&#xff1b;掌握atc命令进行模型转换的基本操作。 2、MobileNetv2模型原理介绍 MobileNet网络是由Google团队于2017年提…

效能工具:执行 npm start 可直接切换proxy代理UR后直接启动项目

1) 背景: 我们项目是2个前端3个后端的配置。前端和每个后端都有需要调试的接口。 因此经常切换vite.congig.js中的proxy后端代理链接&#xff0c;是挺麻烦的。 于是我研究如何能快速切换后端URL&#xff0c;所幸懒人有懒福&#xff0c;我找到了Inquirer 和 fs&#xff0c; 实…