记一次npm和nodejs安装过程
背景
最近接触vue-cli,需要用到nodejs和npm。直接apt-get
安装完成后发现版本过低,换源也不解决问题。最后必应解决了。
步骤
首先彻底卸载nodejs和npm:
1 | sudo apt-get --purge npm |
然后去NodeSource获取换源指令并安装nodejs和npm,如下:
1 | # Using Ubuntu |
完成。
新的问题:npm not found
我安装完成后发现,npm指令执行报错:
1 | -bash: /usr/local/bin/npm: No such file or directory |
经过排查,发现是符号链接异常导致:npm会安装在/usr/bin/
下,而在/usr/local/bin/
下会创建软链接指向前者。所以只需要删掉原来的链接再手动创建就可以啦:
1 | cd /usr/local/bin/ |
这时候再输入npm -v
,就可以看到npm正常运行了。
再安装
直接扔/usr/local
底下然后把bin
加到$PATH
就行,省时省力。
1 | wget https://mirrors.ustc.edu.cn/node/latest-v20.x/node-v20.5.1-linux-x64.tar.gz \ |
如果是Arch Linux的话,直接yay/pacman启动就行。真香啊.jpg
换源
一条指令就行,执行结果会在~/.npmrc
里。
1 | npm config set registry https://registry.npmmirror.com/ |
pnpm
方法大同小异:
1 | # pnpm install & change source |
今天开发的时候发现源一直不对,而且换不了,遂排查环境变量,~/.npmrc
等都没发现问题。然后项目内全局搜索,发现项目底下也有个.npmrc
设置了registry字段。删掉后恢复正常。
推测是.npmrc
可以被当前项目下的覆盖掉根目录下的。