最近,有新老项目一起开发,node版本太高,老项目起不来;node版本太低,新项目还搭不起来…所以,一个nvm就显得很有必要了。这几个坑掉的,摔的我差点起不来…
废话少说就是:
.exe
,path
,就去nvm文件夹,设置文件夹的修改、写入权限(第5步)install
之后,报npm 下载 error
, 就用管理员身份运行cmd
,再install
对应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: vm emp: Access is denied.
下面这种错误:
Downloading node.js version 16.9.1 (64-bit)…
Error while creating D:nvmv16.9.1node64.exe - open D:nvmv16.9.1node64.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:nvmtemp
mkdir D:nvmtemp: Access is denied.
需要你检查下你上面,安装nvm的文件夹权限(D: vm),我的是因为需要管理员权限才能新建文件,所以直接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’不是内部或外部命令,也不是可运行的程序 或批处理文件