最近,有新老项目一起开发,node版本太高,老项目起不来;node版本太低,新项目还搭不起来…所以,一个nvm就显得很有必要了。这几个坑掉的,摔的我差点起不来…
废话少说就是:
- 用管理员身份运行
.exe , - 找不到
path ,就去nvm文件夹,设置文件夹的修改、写入权限(第5步) install 之后,报npm 下载 error , 就用管理员身份运行cmd ,再install 对应node版本 (以上几步之后,下载node版本报错,和node不是命令的问题,应该是解决了)- 现在
npm -v 还是不行的话,就从node官网找到对应版本,替换nvm对应版本的包
详细的步骤看下面吧:
-
首先你要卸载掉之前的node,或者nvm -
用管理员 方式打开你的nvm-setup.exe, 一定要用管理员。没有.exe的,来这里下载 -
然后一路走下去,选择nvm和node的安装路径 nvm的安装路径: 管理nodeJs版本的路径: -
试试nvm -v 是不是可以的,一般是可以的,不可以先重启电脑之后也是可以的 -
然后 nvm list available 、选择一个版本nvm install xx.xx.x. 如果你报错了,什么路径找不到The system cannot find the path specified. 、mkdir D:\nvm\temp: Access is denied. 下面这种错误:
Downloading node.js version 16.9.1 (64-bit)...
Error while creating D:\nvm\v16.9.1\node64.exe - open D:\nvm\v16.9.1\node64.exe: The system cannot find the path specified.
Error while downloading https://nodejs.org/dist/v16.9.1/win-x64//node.exe - invalid argument
Complete
Creating D:\nvm\temp
mkdir D:\nvm\temp: Access is denied.
需要你检查下你上面,安装nvm的文件夹权限(D:\nvm),我的是因为需要管理员权限才能新建文件,所以直接nvm install 它找不到路径 要在属性=> 安全 =>编辑,里面设置放开一下,写入修改的权限,我之前红色框里的权限是没有的。 6.开放了权限,我又install了一下,还是有问题 看的见,node是安装成功了,可对应的npm又报错了
Downloading npm version 7.21.1... Error while downloading https://github.com/npm/cli/archive/v7.21.1.zip - Get https://github.com/npm/cli/archive/v7.21.1.zip: net/http: TLS handshake timeout
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x20 pc=0x5c6eb0]
goroutine 1 [running]:
_/C_/Users/corey/Documents/workspace/nvm-windows/src/nvm/web.Download(0x1144e000, 0x2e, 0x114ec120, 0x1b, 0x117c89a0, 0x6, 0x0)
C:/Users/corey/Documents/workspace/nvm-windows/src/nvm/web/web.go:68 +0x240
_/C_/Users/corey/Documents/workspace/nvm-windows/src/nvm/web.GetNpm(0x1143e5a1, 0x6, 0x117c89a0, 0x6, 0x1f)
C:/Users/corey/Documents/workspace/nvm-windows/src/nvm/web/web.go:163 +0x21b
main.install(0x1143e078, 0x6, 0x660283, 0x2)
C:/Users/corey/Documents/workspace/nvm-windows/src/nvm.go:268 +0x626
main.main()
C:/Users/corey/Documents/workspace/nvm-windows/src/nvm.go:78 +0x8cd
-
解决办法是,用管理员的命令行去再install node,win + x 会出来的 再install一遍,是可以下载成功的。我猜,也是创建nodejs文件的权限问题导致的下载失败。(也许从上面第5步开始,直接用管理员的命令行是可以解决。) -
但是到了这一步,我还是有问题。 运行npm -v 他说'npm' 不是内部或外部命令,也不是可运行的程序 ; 我打开nvm文件夹去看了下,16.9.1里面这些都没有,node_modules文件夹也是空的。。。 -
解决办法是:从node官网找对应版本的zip压缩包下来,替换掉这个目录里的东西,然后就完美解决了,node、npm都没问题,也可以自由切换版本。 node的各个版本下载地址链接
还不清楚,看这篇文章: win10安装nvm管理node版本,以及环境配置和遇到的坑(‘node’ 和’npm’不是内部或外部命令,也不是可运行的程序 或批处理文件
|