node系列-使用nvm-windows管理nodejs版本_nvm invalid memory address or nil pointer derefere-程序员宅基地

技术标签: 前端  npm  nodejs  nvm-windows  

在window上管理nodejs版本,安装nvm-windows

第一次安装使用nvm-windows,会遇到好多坑,请仔细按一下步骤安装:

  • 在Windows下完全卸载已安装的node.js

  • 从卸载程序卸载程序和功能,也可以直接右键node.js的安装包并选择卸载。
  • 重新启动(或者重新启动任务管理器杀死所有与节点相关的进程)。
  • 从下列的目录中找到相关的内容并删除掉:
    • C:\Program Files (x86)\nodejs
    • C:\Program Files\nodejs
    • C:\Users{User}\AppData\Roaming\npm(或%appdata%\npm)
    • C:\Users{User}\AppData\Roaming\npm-cache(或%appdata%\npm-cache)
    • 检查%PATH%环境变量以确保没有引用Nodejs或npm存在。
  • 重新启动电脑。
  • 下载nvm-windows

地址:https://github.com/coreybutler/nvm-windows/releases
下载最新版本安装包即可:
在这里插入图片描述
解压后里面是nvm-setup.exe安装文件,默认安装即可,记住默认安装哦,不然安装node时有可能没有权限而无法创建node快捷方式。

  • 测试是否安装成功(有坑)

打开CMD窗口,直行nvm,如果显示版本等信息,则说明安装成功。

C:\Users\Administrator>nvm

Running version 1.1.8.

Usage:

  nvm arch                     : Show if node is running in 32 or 64 bit mode.
  nvm current                  : Display active version.
  nvm install <version> [arch] : The version can be a specific version, "latest" for the latest current version, or "lts" for the
                                 most recent LTS version. Optionally specify whether to install the 32 or 64 bit version (defaults
                                 to system arch). Set [arch] to "all" to install 32 AND 64 bit versions.
                                 Add --insecure to the end of this command to bypass SSL validation of the remote download server.
  nvm list [available]         : List the node.js installations. Type "available" at the end to see what can be installed. Aliased as ls.
  nvm on                       : Enable node.js version management.
  nvm off                      : Disable node.js version management.
  nvm proxy [url]              : Set a proxy to use for downloads. Leave [url] blank to see the current proxy.
                                 Set [url] to "none" to remove the proxy.
  nvm node_mirror [url]        : Set the node mirror. Defaults to https://nodejs.org/dist/. Leave [url] blank to use default url.
  nvm npm_mirror [url]         : Set the npm mirror. Defaults to https://github.com/npm/cli/archive/. Leave [url] blank to default url.
  nvm uninstall <version>      : The version must be a specific version.
  nvm use [version] [arch]     : Switch to ue the specified version. Optionally use "latest", "lts", or "newest".
                                 "newest" is the latest installed version. Optionally specify 32/64bit architecture.
                                 nvm use <arch> will continue using the selected version, but switch to 32/64 bit mode.
  nvm root [path]              : Set the directory where nvm should store different versions of node.js.
                                 If <path> is not set, the current root will be displayed.
  nvm version                  : Displays the current running version of nvm for Windows. Aliased as v.

但是,如果显示没有nvm不是内部或外部命令,则需要做些检查。

C:\Users\qdz>nvm
'nvm' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

第一步,检查是否配置了path环境变量
在这里插入图片描述
在这里插入图片描述
第二步:如果上面环境变量都存在,则就要重启电脑,再次执行nvm则成功。

在使用之前一定要更换下载源

如果不更换下载源,会出现安装失败。也可能出现node安装成功,npm安装失败问题。
下面演示的就是,因未更换下载源,node安装成功,但npm安装失败。

C:\Users\Administrator>nvm install 15.0.1
Downloading node.js version 15.0.1 (64-bit)...
Complete
Creating C:\Users\Administrator\AppData\Roaming\nvm\temp

Downloading npm version 7.0.3... Error while downloading https://github.com/npm/cli/archive/v7.0.3.zip - Get "https://github.com/npm/cli/archive/v7.0.3.zip": read tcp 192.168.10.224:58463->20.205.243.166:443: wsarecv: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x20 pc=0x2fa5a7]

goroutine 1 [running]:
nvm/web.Download(0x11810300, 0x2d, 0x11812400, 0x3e, 0x11bd7c10, 0x5, 0x0)
        C:/Users/corey/OneDrive/Documents/workspace/oss/coreybutler/nvm-windows/src/web/web.go:81 +0x1c7
nvm/web.GetNpm(0x11810481, 0x2a, 0x11bd7c10, 0x5, 0x119a4994)
        C:/Users/corey/OneDrive/Documents/workspace/oss/coreybutler/nvm-windows/src/web/web.go:209 +0x22e
main.install(0x1180a0c8, 0x6, 0x372ad3, 0x2)
        C:/Users/corey/OneDrive/Documents/workspace/oss/coreybutler/nvm-windows/src/nvm.go:295 +0x82c
main.main()
        C:/Users/corey/OneDrive/Documents/workspace/oss/coreybutler/nvm-windows/src/nvm.go:86 +0x88f

更换下载源

nvm默认安装目录为:C:\Users\Administrator[当前windows用户名]\AppData\Roaming\nvm
进入 nvm 安装目录,编辑 setting.txt,追加两行代码:

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

接下来我们开始使用nvm。

  • 查看已安装的nodejs版本

nvm list
  • 如果是第一次安装,使用该命令结果如下:

C:\Users\Administrator>nvm list

No installations recognized.
  • 查看可安装的nodejs版本

nvm list available

输入该命令结果如下:

|   CURRENT    |     LTS      |  OLD STABLE  | OLD UNSTABLE |
|--------------|--------------|--------------|--------------|
|    17.0.1    |   14.18.1    |   0.12.18    |   0.11.16    |
|    17.0.0    |   14.18.0    |   0.12.17    |   0.11.15    |
|   16.12.0    |   14.17.6    |   0.12.16    |   0.11.14    |
|   16.11.1    |   14.17.5    |   0.12.15    |   0.11.13    |
|   16.11.0    |   14.17.4    |   0.12.14    |   0.11.12    |
|   16.10.0    |   14.17.3    |   0.12.13    |   0.11.11    |
|    16.9.1    |   14.17.2    |   0.12.12    |   0.11.10    |
|    16.9.0    |   14.17.1    |   0.12.11    |    0.11.9    |
|    16.8.0    |   14.17.0    |   0.12.10    |    0.11.8    |
|    16.7.0    |   14.16.1    |    0.12.9    |    0.11.7    |
|    16.6.2    |   14.16.0    |    0.12.8    |    0.11.6    |
|    16.6.1    |   14.15.5    |    0.12.7    |    0.11.5    |
|    16.6.0    |   14.15.4    |    0.12.6    |    0.11.4    |
|    16.5.0    |   14.15.3    |    0.12.5    |    0.11.3    |
|    16.4.2    |   14.15.2    |    0.12.4    |    0.11.2    |
|    16.4.1    |   14.15.1    |    0.12.3    |    0.11.1    |
|    16.4.0    |   14.15.0    |    0.12.2    |    0.11.0    |
|    16.3.0    |   12.22.7    |    0.12.1    |    0.9.12    |
|    16.2.0    |   12.22.6    |    0.12.0    |    0.9.11    |
|    16.1.0    |   12.22.5    |   0.10.48    |    0.9.10    |

This is a partial list. For a complete list, visit https://nodejs.org/download/releases

这边展示的版本并不全,可以按上面的指引去nodejs官网查看可用版本https://nodejs.org/en/download/releases/,但是官网更新之后这个地址看不到所有版本了,只能看到每个版本的最新稳定版本,要想看到所有版本,请查看这个https://nodejs.org/dist/

  • 安装最新版本nodejs

nvm install latest
  • 安装指定版本nodejs(必须是存在的版本号)

nvm install 17.0.0
  • 指定要使用的版本

nvm use 17.0.0
  • 卸载指定版本nodejs(正在使用的版本无法卸载)

nvm uninstall 17.0.0

上面就是nvm-windows的整个安装过程了,如有疑问,请私信。

附录:nvm 常用指令

nvm 提供了强大而简洁的命令:

nvm arch [32|64]: 显示 node.js 运行在 32位 还是 64位架构. 设置 32/64 可以覆盖默认的系统架构.
nvm install [arch]: 安装特定版本. 版本可以填入具体的 node.js 版本号或“latest”表示最新的稳定版本.(可选)指定是安装32位版本还是64位版本(默认为系统架构). 将[arch]设置为all以安装32位和64位版本.
nvm list [available]: 列出所有已安装的 node.js 版本. 键入 available 在结尾可以显示当前可用于下载的所有版本列表.
nvm on: 启用 node.js 版本管理.
nvm off: 禁用 node.js 版本管理 (并不会卸载任何已安装的版本).
nvm proxy [url]: 设置用于下载的代理. 将[url]留空以查看当前代理。将[url]设置为“none”以删除代理.
nvm uninstall: 卸载特定版本.
nvm use [arch]: 切换到指定的版本. 可选地指定32/64位体系结构.nvm use将继续使用所选版本,但根据提供给``的值切换到32/64位模式。有关在特定目录中使用“use”(或使用“.nvmrc”)的信息,请参阅 issue #16.
nvm root: 指定一个存放 node.js 不同版本的根目录. 如果为未设置任何值,则会显示当前已设置的目录.
nvm version: 显示 nvm-windows 的当前版本.
nvm node_mirror: 设置 node 镜像源. 中国用户请使用 npm.taobao.org/mirrors/nod…
nvm npm_mirror: 设置 npm 镜像源. 中国用户请使用 npm.taobao.org/mirrors/npm…

总结问题:

  1. nvm use 17.7.1 报错
    nvm use 报错
    exit status 1: ???д???
    类似上面错误,是因为权限不足,管理员身份运行cmd或PowerShell,再次执行,成功。
    执行成功
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/zqd_java/article/details/120895871

智能推荐

hive使用适用场景_大数据入门:Hive应用场景-程序员宅基地

文章浏览阅读5.8k次。在大数据的发展当中,大数据技术生态的组件,也在不断地拓展开来,而其中的Hive组件,作为Hadoop的数据仓库工具,可以实现对Hadoop集群当中的大规模数据进行相应的数据处理。今天我们的大数据入门分享,就主要来讲讲,Hive应用场景。关于Hive,首先需要明确的一点就是,Hive并非数据库,Hive所提供的数据存储、查询和分析功能,本质上来说,并非传统数据库所提供的存储、查询、分析功能。Hive..._hive应用场景

zblog采集-织梦全自动采集插件-织梦免费采集插件_zblog 网页采集插件-程序员宅基地

文章浏览阅读496次。Zblog是由Zblog开发团队开发的一款小巧而强大的基于Asp和PHP平台的开源程序,但是插件市场上的Zblog采集插件,没有一款能打的,要么就是没有SEO文章内容处理,要么就是功能单一。很少有适合SEO站长的Zblog采集。人们都知道Zblog采集接口都是对Zblog采集不熟悉的人做的,很多人采取模拟登陆的方法进行发布文章,也有很多人直接操作数据库发布文章,然而这些都或多或少的产生各种问题,发布速度慢、文章内容未经严格过滤,导致安全性问题、不能发Tag、不能自动创建分类等。但是使用Zblog采._zblog 网页采集插件

Flink学习四:提交Flink运行job_flink定时运行job-程序员宅基地

文章浏览阅读2.4k次,点赞2次,收藏2次。restUI页面提交1.1 添加上传jar包1.2 提交任务job1.3 查看提交的任务2. 命令行提交./flink-1.9.3/bin/flink run -c com.qu.wc.StreamWordCount -p 2 FlinkTutorial-1.0-SNAPSHOT.jar3. 命令行查看正在运行的job./flink-1.9.3/bin/flink list4. 命令行查看所有job./flink-1.9.3/bin/flink list --all._flink定时运行job

STM32-LED闪烁项目总结_嵌入式stm32闪烁led实验总结-程序员宅基地

文章浏览阅读1k次,点赞2次,收藏6次。这个项目是基于STM32的LED闪烁项目,主要目的是让学习者熟悉STM32的基本操作和编程方法。在这个项目中,我们将使用STM32作为控制器,通过对GPIO口的控制实现LED灯的闪烁。这个STM32 LED闪烁的项目是一个非常简单的入门项目,但它可以帮助学习者熟悉STM32的编程方法和GPIO口的使用。在这个项目中,我们通过对GPIO口的控制实现了LED灯的闪烁。LED闪烁是STM32入门课程的基础操作之一,它旨在教学生如何使用STM32开发板控制LED灯的闪烁。_嵌入式stm32闪烁led实验总结

Debezium安装部署和将服务托管到systemctl-程序员宅基地

文章浏览阅读63次。本文介绍了安装和部署Debezium的详细步骤,并演示了如何将Debezium服务托管到systemctl以进行方便的管理。本文将详细介绍如何安装和部署Debezium,并将其服务托管到systemctl。解压缩后,将得到一个名为"debezium"的目录,其中包含Debezium的二进制文件和其他必要的资源。注意替换"ExecStart"中的"/path/to/debezium"为实际的Debezium目录路径。接下来,需要下载Debezium的压缩包,并将其解压到所需的目录。

Android 控制屏幕唤醒常亮或熄灭_android实现拿起手机亮屏-程序员宅基地

文章浏览阅读4.4k次。需求:在诗词曲文项目中,诗词整篇朗读的时候,文章没有读完会因为屏幕熄灭停止朗读。要求:在文章没有朗读完毕之前屏幕常亮,读完以后屏幕常亮关闭;1.权限配置:设置电源管理的权限。

随便推点

目标检测简介-程序员宅基地

文章浏览阅读2.3k次。目标检测简介、评估标准、经典算法_目标检测

记SQL server安装后无法连接127.0.0.1解决方法_sqlserver 127 0 01 无法连接-程序员宅基地

文章浏览阅读6.3k次,点赞4次,收藏9次。实训时需要安装SQL server2008 R所以我上网上找了一个.exe 的安装包链接:https://pan.baidu.com/s/1_FkhB8XJy3Js_rFADhdtmA提取码:ztki注:解压后1.04G安装时Microsoft需下载.NET,更新安装后会自动安装如下:点击第一个傻瓜式安装,唯一注意的是在修改路径的时候如下不可修改:到安装实例的时候就可以修改啦数据..._sqlserver 127 0 01 无法连接

js 获取对象的所有key值,用来遍历_js 遍历对象的key-程序员宅基地

文章浏览阅读7.4k次。1. Object.keys(item); 获取到了key之后就可以遍历的时候直接使用这个进行遍历所有的key跟valuevar infoItem={ name:'xiaowu', age:'18',}//的出来的keys就是[name,age]var keys=Object.keys(infoItem);2. 通常用于以下实力中 <div *ngFor="let item of keys"> <div>{{item}}.._js 遍历对象的key

粒子群算法(PSO)求解路径规划_粒子群算法路径规划-程序员宅基地

文章浏览阅读2.2w次,点赞51次,收藏310次。粒子群算法求解路径规划路径规划问题描述    给定环境信息,如果该环境内有障碍物,寻求起始点到目标点的最短路径, 并且路径不能与障碍物相交,如图 1.1.1 所示。1.2 粒子群算法求解1.2.1 求解思路    粒子群优化算法(PSO),粒子群中的每一个粒子都代表一个问题的可能解, 通过粒子个体的简单行为,群体内的信息交互实现问题求解的智能性。    在路径规划中,我们将每一条路径规划为一个粒子,每个粒子群群有 n 个粒 子,即有 n 条路径,同时,每个粒子又有 m 个染色体,即中间过渡点的_粒子群算法路径规划

量化评价:稳健的业绩评价指标_rar 海龟-程序员宅基地

文章浏览阅读353次。所谓稳健的评估指标,是指在评估的过程中数据的轻微变化并不会显著的影响一个统计指标。而不稳健的评估指标则相反,在对交易系统进行回测时,参数值的轻微变化会带来不稳健指标的大幅变化。对于不稳健的评估指标,任何对数据有影响的因素都会对测试结果产生过大的影响,这很容易导致数据过拟合。_rar 海龟

IAP在ARM Cortex-M3微控制器实现原理_value line devices connectivity line devices-程序员宅基地

文章浏览阅读607次,点赞2次,收藏7次。–基于STM32F103ZET6的UART通讯实现一、什么是IAP,为什么要IAPIAP即为In Application Programming(在应用中编程),一般情况下,以STM32F10x系列芯片为主控制器的设备在出厂时就已经使用J-Link仿真器将应用代码烧录了,如果在设备使用过程中需要进行应用代码的更换、升级等操作的话,则可能需要将设备返回原厂并拆解出来再使用J-Link重新烧录代码,这就增加了很多不必要的麻烦。站在用户的角度来说,就是能让用户自己来更换设备里边的代码程序而厂家这边只需要提供给_value line devices connectivity line devices