linux安装最新版本的npm和node

先安装旧版本npm

# Deepin
sudo apt install -y npm
# CentOS
sudo yum install npm

查看当前版本

npm -v

我的输出是

3.5.2

是非常老的版本

安装最新版node

新版npm可能不支持老版本的node:https://seekstar.github.io/2021/12/30/npm-does-not-support-node-js-v10-21-0-you-should-probably-upgrade-to-a-newer-version-of-node/

所以先升级node。使用国内镜像源升级:

sudo npm install -g n --registry=https://registry.npmmirror.com
# https://github.com/tj/n#custom-source
# 有些发行版sudo的PATH可能没有/usr/local/bin,加上-i之后会执行/etc/profile,就有/usr/local/bin了。
sudo bash -i -c "N_NODE_MIRROR=https://npmmirror.com/mirrors/node n stable"

如果不使用国内镜像源的话:

sudo npm install -g n
sudo n stable

我的输出

searchstar@searchstar-mint19:~$ sudo n stable

  installing : node-v12.16.1
       mkdir : /usr/local/n/versions/node/12.16.1
       fetch : https://nodejs.org/dist/v12.16.1/node-v12.16.1-linux-x64.tar.xz
   installed : v12.16.1 (with npm 6.13.4)

Note: the node command changed location and the old location may be remembered in your current shell.
         old : /usr/bin/node
         new : /usr/local/bin/node
To reset the command location hash either start a new shell, or execute PATH="$PATH"

这里很良心地提示了要重启终端或者执行

PATH="$PATH"

才能使用最新版本

查看现在的node版本

node -v
v12.16.1

已经是最新版了

安装最新npm

可以通过旧版本npm直接安装新版npm

# 可以加上--registry=https://registry.npmmirror.com来使用国内镜像源
sudo npm install npm@latest -g

非常坑的是,现在立即执行

npm -v

得到的还是旧版本,这是因为此时npm仍然指向旧的npm可执行文件。其实只要重开终端或者执行

PATH="$PATH"

就可以更新npm命令指向的文件了。
再查看版本:

6.14.4

这就是最新版的npm了。

posted @ 2024-09-28 13:38  寻找繁星  阅读(170)  评论(0编辑  收藏  举报