如何更新 npm

Posted

技术标签:

【中文标题】如何更新 npm【英文标题】:How to update npm 【发布时间】:2014-06-17 02:31:54 【问题描述】:

我正在尝试安装 mean.io 样板。运行sudo npm install -g meanio@latest 时失败。在失败之前它指出它'想要' npm 版本 1.4.x,而我安装了 1.2.18。所以我尝试将 npm 更新到最新版本;几种方式。最后一个是...

ubuntu@ip-xxx-xx-xx-xxx:~$ sudo npm install -g npm
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@1.4.7 /usr/local/lib/node_modules/npm

ubuntu@ip-xxx-xx-xx-xxx:~$ npm --version
1.2.18

为什么我刚更新到 1.4.7 还是显示版本 1.2.18?

【问题讨论】:

sudo npm update npm -g 如果您可以冒险使用不受支持的 PPA,请尝试 launchpad.net/~chris-lea/+archive/node.js sudo npm install npm -g 帮了我 How can I update Node.js and npm to the next versions?的可能重复 这应该在Ask Ubuntu 【参考方案1】:

很简单

适用于 Linux 或 Mac

sudo npm install npm@latest -g

对于 Windows:以管理员身份运行命令提示符并运行以下命令

npm install npm@latest -g

【讨论】:

【参考方案2】:
sudo npm install npm@latest -g

这在 ubuntu 18.04 中对我有用

【讨论】:

【参考方案3】:

你可以使用npm包管理器:

npm install npm@latest

这会使用自己@最新版本安装npm

【讨论】:

【参考方案4】:

NPM 在运行$ sudo npm install npm -g 后返回旧版本。

重新启动终端(即关闭并再次打开)为我解决了这个问题,$ npm --version 开始返回预期的版本。

* @Rimian 在另一个答案的评论中提到需要重新加载终端。

【讨论】:

【参考方案5】:

对我来说,它适用于以下命令

    $curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - $apt 安装 nodejs

参考:https://linuxhint.com/how-to-update-npm-packages/

【讨论】:

【参考方案6】:

不要忘记关闭并再次启动终端窗口;)

(至少如果你想在终端中检查“npm --version”)

sudo npm install npm -g

这对我也有用

【讨论】:

“关闭并再次启动终端”部分是我所缺少的。谢谢【参考方案7】:

适用于 Ubuntu 18.04

npm install latest-version

我希望它也适合你

【讨论】:

【参考方案8】:
nvm install-latest-npm

如果你碰巧使用nvm

【讨论】:

【参考方案9】:

这将使用 npm 本身更新 npm

sudo npm install npm -g

如果您遇到困难,请尝试sudo npm update npm -g。所有功劳归功于 Tim Castelijns。我已经在 ubuntu 14.04、npm 1.3.10 上对其进行了测试


请注意,如果您使用nvm 来管理本地开发环境中的多个版本,例如出于测试目的,您安装的所有版本(由nvm ls 列出)都在 ~/.nvm 中,因此您只需省略系统范围的安装(即省略 sudo):

npm install npm -g

DEBIAN 企业版

对于完整的企业实践,请考虑 nodesource.com

curl -sL https://deb.nodesource.com/setup | sudo bash -

如here所述。

其他企业

对于非 debian 发行版,请查看节点 github wiki https://github.com/joyent/node/wiki/installing-node.js-via-package-manager下载页面https://nodejs.org/en/download/

为了理解历史:Chis Lea 一直在维护他的 PPA,但现在 joined forces 使用 nodesource

【讨论】:

我建议使用 PPA 存储库,以便让 ubuntu 包管理器与其他所有内容一起维护更新。 在生产服务器上,是的,也许。但是在 dev 上,你真的想保证你直接从 npm 包维护者那里获得东西,而不是 PPA 维护者 我不同意。您不希望 dev 与生产不同,否则您会遇到不同版本的部署问题。 再次根据您的偏执程度,相信 Chis Lea 的 PPA 可能会有问题。总是可以决定将项目中的关键依赖项作为本地副本卸载多少。如果您不在银行工作,而是在做一个开源项目,您甚至可能不需要担心生产:) 我将在此处链接节点 wiki,仅列出所有替代方案。在代码分发方面,我个人不是 PPA 和 github 标签的大佬。 不需要使用 Chris 的 PPA。使用来自节点源的官方版本。【参考方案10】:

检查你的节点版本 node -v 和你的 npm 版本 npm -v 然后更新你的 npm ,在终端中输入: sudo npm install npm@latest -g

注意:基于 Debian 的操作系统ubuntu 或 Linux mint

【讨论】:

【参考方案11】:

这就是在 ubuntu 上对我有用的方法 curl -L https://www.npmjs.com/install.sh | sh

【讨论】:

【参考方案12】:

在 Ubuntu 14.04 上尝试了上述选项,但它们会不断产生此错误:

npm 错误! tar 包读取错误 /root/tmp/npm-15864/1465947804069-0.4854120113886893/package

然后在网上找到了这个解决方案:

1) 先清理npm的缓存:

sudo npm cache clean -f

2) 安装 npm 的 n 模块:

sudo npm install -g n

3) 选择要安装的节点版本开始安装:stablelatest,我们这里使用stable

sudo n stable

4) 检查节点版本:

node -v

5) 检查 npm 的版本:

npm -v

【讨论】:

这个答案可以使用一些扩展来解释不太明显的命令在做什么。【参考方案13】:

检查你的节点版本node -v和你的npm版本npm -v 然后要更新你的 npm,在你的终端中输入: npm install npm@latest -g

希望我能帮上忙。问候

【讨论】:

【参考方案14】:

你可以试试:

sudo npm i -g npm

【讨论】:

【参考方案15】:

如果user3223763的回答不起作用,你可以试试这个:

sudo apt-get remove nodejs ^node-* nodejs-*
sudo apt-get autoremove
sudo apt-get clean
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install nodejs

然后:

curl https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | sh

在此之后,打开一个新终端并检查 npm 版本:

npm --version

编辑/更新:

今天最后一个nvm版本是:

https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh

因此 CURL 命令是:v0.25.4 而不是 v0.13.1

curl https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh | sh

您可以检查https://github.com/creationix/nvm/releases以使用正确的版本进行进一步升级

【讨论】:

user3223763 对我不起作用,自我更新 npm 也不起作用。谢谢丹尼尔 我可以确认此方法有助于更新 npm。以前的方法具有未满足的库依赖关系,或者会更新 npm 但不会更新路径/环境以使用新位置。 这对我也有用,其他答案在 Ubuntu 14.0.4 上没有 这适用于我使用安装在带有 Crouton 的 Chromebook 上的 Ubuntu 14.04。我在网上找不到其他任何方法 安装 npm 需要 nvm 吗?【参考方案16】:
npm i -g npm

      Update available 4.5.0 → 4.6.1    │
   │     Run npm i -g npm to update 

这是 npm 在终端时推荐的,第二块是直接从我的终端复制和粘贴的

注意:我使用的是 mac

【讨论】:

这个问题专门针对 ubuntu,而不是 osx。如果我在 ubuntu 中尝试了您的命令,npm 将失败并显示Error: Cannot find module 'process-nextick-args'。你应该删除你的答案。【参考方案17】:

要获得最新的稳定版本,只需运行

npm install npm@latest -g

对我来说效果很好!

【讨论】:

【参考方案18】:

如果你想将 npm 更新到特定版本,你可以使用这个:

npm install npm@version-number

【讨论】:

【参考方案19】:

升级到 nodejs v0.12.7

 # Note the new setup script name for Node.js v0.12
 curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -

 # Then install with:
 sudo apt-get install -y nodejs

Source from nodesource.com

【讨论】:

【参考方案20】:

看起来您正在使用 Ubuntu(从您显示的命令行)。要更新 npmnodejs,您可以使用 PPA 存储库:

sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs npm

【讨论】:

E: The repository 'http://ppa.launchpad.net/chris-lea/node.js/ubuntu bionic Release' does not have a Release file. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details. 用于 Ubuntu 18.04 Err:11 ppa.launchpad.net/chris-lea/node.js/ubuntu 未找到仿生版本 404 [IP: 91.189.95.83 80] 摆脱恼人的错误运行:rm /etc/apt/sources.list.d/cooperjona-ubuntu-nitrotasks-bionic.list

以上是关于如何更新 npm的主要内容,如果未能解决你的问题,请参考以下文章

如何更新 npm

如何更新 npm

如何在 Windows 上更新 npm?

如何在 Windows 上更新 npm?

如何在 Windows 上更新 npm?

如何撤消 npm 更新?