在 Ubuntu 22.04 上更新 NodeJS 版本

Moh*_*ili 6 apt node.js npm ubuntu-22.04

我正在尝试将 NodeJS 12.22.09 升级到版本 16 或更高版本,但是当我输入命令时,sudo apt update && sudo apt upgrade它会返回以下错误:

\n
Preparing to unpack \xe2\x80\xa6/12-nodejs_16.16.0-deb-1nodesource1_amd64.deb \xe2\x80\xa6\nUnpacking nodejs (16.16.0-deb-1nodesource1) over (12.22.9~dfsg-1ubuntu3) \xe2\x80\xa6\ndpkg: error processing archive /tmp/apt-dpkg-install-hIlTWe/12-nodejs_16.16.0-deb-1nodesource1_amd64.deb (\xe2\x80\x94unpack):\n trying to overwrite \xe2\x80\x98/usr/include/node/common.gypi\xe2\x80\x99, which is also in package libnode-dev 12.22.9~dfsg-1ubuntu3\ndpkg-deb: error: paste subprocess was killed by signal (Broken pipe)\nPreparing to unpack \xe2\x80\xa6/13-snapd_2.56.2+22.04ubuntu1_amd64.deb \xe2\x80\xa6\nUnpacking snapd (2.56.2+22.04ubuntu1) over (2.55.5+22.04) \xe2\x80\xa6\nErrors were encountered while processing:\n /tmp/apt-dpkg-install-hIlTWe/12-nodejs_16.16.0-deb-1nodesource1_amd64.deb\nE: Sub-process /usr/bin/dpkg returned an error code (1)\n
Run Code Online (Sandbox Code Playgroud)\n

如何解决这个问题呢?

\n

小智 19

有一个名为“ n ”的 npm 包处理节点版本管理。此外,它还支持方便的版本命名,例如“current”、“lts”或“18.12.1”。

因此,在您的 shell 中输入以下命令:

sudo npm install -g n
sudo n lts
Run Code Online (Sandbox Code Playgroud)

  • 虽然此代码可以回答问题,但提供有关如何和/或为何解决问题的附加上下文将提高​​答案的长期价值。 (2认同)