首页 > 解决方案 > npm install -g npm@latest 不安装最新版本

问题描述

当我尝试将 npm 更新到最新版本时,我被告知包已更新,但是当我去检查它时,它会返回更新前的相同版本。没有错误提示更新期间出现错误。

我可以告诉你的是,我对 NPM 本身的内部运作不是很有信心。如果 npm 本身已完全配置,我知道足以运行它。

大约两年前,我开始在不同的目录、同一个用户(单用户设备)中运行我的代码,因为我一直遇到访问问题,并且每次我想安装任何依赖项时都必须使用 sudo。我不记得在任何$PATH或任何 npm 配置中重新映射任何内容。

我试过的

ianbuss @ Ians-MacBook-Air in ~ [10:23:44]
$ npm -v
6.10.0

# ianbuss @ Ians-MacBook-Air in ~ [10:23:49]
$ sudo npm install -g npm@latest
Password:
/Users/ianbuss/.npm-global/bin/npm -> /Users/ianbuss/.npm-global/lib/node_modules/npm/bin/npm-cli.js
/Users/ianbuss/.npm-global/bin/npx -> /Users/ianbuss/.npm-global/lib/node_modules/npm/bin/npx-cli.js
+ npm@6.13.6
updated 1 package in 11.955s

# ianbuss @ Ians-MacBook-Air in ~ [10:29:29]
$ npm -v
6.10.0

终端提示图片

标签: npmterminalinstallationenvironment

解决方案


在永远寻找解决方案并尝试了解有关 PATH 的更多信息之后。我发现这篇文章对于解决这个问题非常有用。具体来说,第 3 步:https ://medium.com/@jagatjyoti.1si13cs040/npm-g-install-npm-package-not-working-as-desired-why-why-why-19795abf0b59

首先查看 NPM 全局保存路径在哪里:

npm bin -g
#output most probably but even if not don't worry till now
/home/<user>/node_modules/.bin
Then adjust accordingly:

mkdir ~/.npm-global
npm config set prefix `~/.npm-global`
export PATH=~/.npm-global/bin:$PATH
source ~/.profile
npm install -g <npm_packages>

推荐阅读