1. ホーム
  2. macos

macOSでnpmをアップデートする方法

2023-07-22 02:15:38

質問

原因不明ですが、macOSでnpmの最新バージョンにアップデートできません(Windowsでは問題なく動作します)。 エラーは表示されず、「1 パッケージを更新しました」とだけ表示されます。

Node.js 8.11.1使用。

node -v
v8.11.1

npmのバージョンは?

$ npm -v
5.6.0

これを試してみたところ...

$ npm i -g npm
+ [email protected]
updated 1 package in 7.37s

そして、更新に失敗します。

$ npm -v
5.6.0

npmはどこですか?

$ which npm
/usr/local/bin/npm

そこで brew ...

brew install npm

そして失敗する...

$ npm -v
5.6.0

*そして、これを試したところ... *

npm install npm@latest -g
+ [email protected]
updated 1 package in 7.618s

そして失敗する...

npm -v
5.6.0


sudo :

sudo npm i -g npm
+ [email protected]
updated 1 package in 7.794s

そして失敗する...

npm -v
5.6.0

これも失敗です...。

sudo npm install npm@latest -g


私は の指示に従い、この Q&A に従って、私のシステムから npm と node を完全に削除し、ゼロからそれらを再インストールしましたが、それもまた更新に失敗しています。


リクエストにより、スクリーンショットを掲載します。


ターミナルを閉じてから、再度ターミナルを開いて実行します。

$ npm -v
5.6.0


sudo の2回です。

$ sudo npm i -g npm
+ [email protected]
updated 1 package in 7.478s
$ sudo npm i -g npm
+ [email protected]
updated 1 package in 7.434s

も失敗します。

$ npm -v 
5.6.0


何を間違えたのか?どうなっているのでしょうか?

どうすれば解決するの?

もしかしたら、すでに解決しているかもしれませんが、私がまさにこの問題に直面したときに見つけたことを紹介します。私は2つのバージョンのnpmをインストールしていました。

私は以下のように検証しました。

grep \"version\" ~/.npm-packages/lib/node_modules/npm/package.json

  "version": "6.2.0"

grep \"version\" /usr/local/lib/node_modules/npm/package.json

  "version": "5.6.0",

私はbashプロファイルのパスを更新することでこの問題を回避しましたが、なぜ(どのように)2つのバージョンになってしまったのかを知りたいです。以下はそのアップデートです。

tail -2 ~/.bash_profile

NPM_PACKAGES="${HOME}/.npm-packages"

PATH="$NPM_PACKAGES/bin:$PATH"