web-dev-qa-db-ja.com

macOSでnpmを更新する方法

理由は不明ですが、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とノードを完全に削除し、ゼロから再インストールしましたが、更新も失敗しました。


リクエストごとのスクリーンショット:

enter image description here


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

$ 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

私は何を取りこぼしたか?何が起きてる?

30
NonCreature0714

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

これを次のように確認しました。

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"
13
doh

これは私のMacで動作します。

ドキュメントに基づく https://docs.npmjs.com/troubleshooting/try-the-latest-stable-version-of-npm

npm install -g npm@latest

インストール方法に依存するドキュメントに記載されているメモがあります。Sudoを追加することができます。

* nix(OSX、Linuxなど)でのアップグレード

(デフォルトのインストーラーを使用してNodeをインストールした場合は、特にLinuxまたはOS Xでこれらのコマンドの先頭にSudoを付ける必要があります。)

36
marlo

npm install -g npm@latestは正常に動作します!!また、npm install -g [email protected]のような特定のバージョンの最新のものを置き換えることもできます

私はそれが役立つことを願っています!!!

4
Juned Khan

私は同じ問題に直面しました。すでにnpmバージョンをインストールしている場合は、新しいnpmバージョンのインストールを指定します。以下の手順に従ってください。

  1. Sudo nano /usr/local/lib/node_modules/npm/package.json
  2. "version" : "5.6.0""verison": "5.8.0"に変更します
3
Vihar Manchala

私の場合、nvmの異なるバージョンを管理するためにnodeを使用しています。 npmバージョンをアップグレードするには、

1-現在のバージョンのノードに移動して、npmの最新バージョンをインストールします

cd ~/.nvm/versions/node/v10.9.0
npm install npm

または、おそらく使用できます

nvm install-latest-npm

2-$PATHを編集して、現在のバージョンのnodeを指すようにします

NPM_PACKAGES="${HOME}/.nvm/versions/node/v10.9.0"
PATH="$NPM_PACKAGES/bin:$PATH"
3
Mr. 14