当前位置: 首页 > article >正文

NVM安装使用及问题解决

目录

一、前言

二、NVM安装

三、配置下载源

四、nvm使用

五、安装nvm list available没有的版本

六、问题解决


一、前言

        如果你开发 Node.js 项目,可能会遇到这些问题:

        ①新项目需要 Node.js 18,但老项目只能用 Node.js 14,手动切换很麻烦

        ②全局安装的 npm 包在不同版本下不兼容

        ③想测试新版本 Node.js,但又怕影响现有环境

        NVM(Node Version Manager)就是解决这些问题的工具。它可以让你:

        ①一键安装多个 Node.js 版本
        ②快速切换不同版本
        ③不同项目使用不同 Node.js 环境

二、NVM安装

        下载nvm-setup.zip,链接:https://github.com/coreybutler/nvm-windows/releases

        自定义安装路径,比如我安装在:D:\software\nvm

        

        设置nodejs的安装路径,注意该路径手动创建后会被nvm安装程序设置成软链接,如果安装后没有该路径不用再手动创建。

        

        点击next安装,安装完成后在cmd窗口输入nvm v能查看到版本号即可

        

三、配置下载源

        找到nvm安装路径下的setting.txt,加入以下配置即可:

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

四、nvm使用

        在cmd窗口输入nvm list可查看已经有的node版本,可简写成nvm ls:

        

        使用nvm list available可查看源里面有的node版本:

        

        需要安装node的话,使用nvm install 版本号即可,比如我下载一个node 22.8.0的版本:

        

        如果要使用指定版本的node,使用命令nvm use 版本号即可。

五、安装nvm list available没有的版本

        使用nvm list available显示可用版本基本都是最新的版本,有时候我们项目可能需要使用更老的版本,这时候可以自行下载老版本的压缩包,然后解压到nvm安装目录即可。

        node下载地址:Node.js — Node.js Releases

        比如我要使用14.7.0:

        下载之后放到D:\software\nvm目录下,将文件夹名字改成v14.7.0即可:

        再使用nvm ls可查看版本,使用nvm use 版本号即可使用

六、问题解决

        1、如果nvm use xxx报错:

activation error: NVM_SYMLINK is set to a physical file/directory at D:\software\nodejs. Please remove the location and try again, or select a different location for NVM_SYMLINK

        该问题是因为手动创建了nodejs的文件夹,删除手动创建的文件夹即可

        2、使用node、npm命令时报错:

 D:\web-space\halos-web-wes_overseas> node -v
v22.9.0
npm : 无法加载文件 D:\software\nodejs\npm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 1
+ npm -v
+ ~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess
PS D:\web-space\halos-web-wes_overseas> npm v
npm : 无法加载文件 D:\software\nodejs\npm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。

        该问题是执行策略问题,使用管理员方式打开Powershell,使用命令将策略修改为RemoteSigned:

set-ExecutionPolicy RemoteSigned

        命令get-ExecutionPolicy查看是否成功

 

http://www.lryc.cn/news/2385785.html

相关文章:

  • C++学习之STL学习:string类使用
  • 基于 STC89C52 的养殖场智能温控系统设计与实现
  • redis哨兵服务
  • 5月24日day35打卡
  • 嵌入式<style>设计模式
  • Kotlin 中该如何安全地处理可空类型?
  • 基于大模型预测的视神经脊髓炎技术方案
  • 使用防火墙禁止程序联网(这里禁止vscode)
  • Linux(7)——进程(概念篇)
  • 前端流行框架Vue3教程:24.动态组件
  • Unity3D仿星露谷物语开发48之显示树桩效果
  • [Datagear] 实现按月颗粒度选择日期的方案
  • 漏洞检测与渗透检验在功能及范围上究竟有何显著差异?
  • DB-GPT扩展自定义Agent配置说明
  • 基于SamOutV8的序列生成模型实现与分析
  • 家政维修平台实战09:推送数据到多维表格
  • 前端框架token相关bug,前后端本地联调
  • PyQt学习系列05-图形渲染与OpenGL集成
  • 卷积神经网络(CNN)可视化技术详解:从特征学到演化分析
  • 第十天的尝试
  • WHAT - 兆比特每秒 vs 兆字节每秒
  • 业务场景中使用 SQL 实现快速数据更新与插入
  • QT之INI、JSON、XML处理
  • 微信小程序调用蓝牙API “wx.writeBLECharacteristicValue()“ 报 errCode: 10008 的解决方案
  • 【Java基础笔记vlog】Java中常见的几种数组排序算法汇总详解
  • WebRTC与RTSP|RTMP的技术对比:低延迟与稳定性如何决定音视频直播的未来
  • spring cloud alibaba Sentinel详解
  • Kafka + Flink + Spark 构建实时数仓全链路实战
  • React19源码系列之渲染阶段performUnitOfWork
  • Redis中的事务和原子性