質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
npm

npmは、Node Packaged Modulesの略。Node.jsのライブラリ・パッケージを管理できるツールです。様々なモジュールを簡単にインストールでき、自分でモジュールを作成し公開する際にも使用できます。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

解決済

[Mac] npm自身のアップデート方法

den7
den7

総合スコア23

npm

npmは、Node Packaged Modulesの略。Node.jsのライブラリ・パッケージを管理できるツールです。様々なモジュールを簡単にインストールでき、自分でモジュールを作成し公開する際にも使用できます。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

1回答

0評価

1クリップ

213閲覧

投稿2022/06/22 09:50

編集2022/06/23 19:53

実現したいこと

npm自身をアップデートしたいので、npm install -g npm@8.12.2というコマンドを打ったのですが、

npm notice
npm notice New minor version of npm available! 8.1.2 -> 8.12.2
npm notice Changelog: https://github.com/npm/cli/releases/tag/v8.12.2
npm notice Run npm install -g npm@8.12.2 to update!
npm notice

という文章が出力され、npmをアップデートすることができません。
エラー文は出ないものの、アップデートすることができず困っています。
こちらの方と同じ状況なのですが、MacOSでの解決法をご教授いただけないでしょうか。

環境

パッケージ版を入れたものと思っていたのですがソース版を入れていたようなので、一度nodeをアンインストールした後、nodebrew経由で再インストールしました。

OS: MacBook Pro M1

node
場所: /usr/local/bin/node /Users/〇〇/.nodebrew/current/bin/node
バージョン: v16.13.1 v18.4.0

npm
場所: /usr/local/bin/npm
バージョン: 8.1.2

npx
場所: /usr/local/bin/npx
バージョン: 8.1.2

追加

% brew search node ==> Formulae libbitcoin-node node-build node@14 nodeenv linode-cli node-sass node@16 nodenv llnode node@10 node_exporter ode node node@12 nodebrew

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

hoshi-takanori

2022/06/22 10:17

npm というか node はどうやって入れましたか?
den7

2022/06/22 11:50

homebrew経由で入れました。
hoshi-takanori

2022/06/22 11:53

M1 Mac なら /opt/homebrew に入るはずですが、ターミナルを Rosetta でお使いでしょうか? M1 が出たばかりの頃には対応してないものが多かったので回避策として使われてましたが、今となっては M1 の利点を消してるだけのような…。
den7

2022/06/22 12:17

おっしゃる通りでRosettaを使用しています。初期に不具合が出たことからRosettaにしてそのままにしていました、、、。 brew searchで検索したところnodeがあり、記憶でもbrewを使ったような気がするのでそうだと思うのですが、bin以下に入っているのは私も気になっていました、。
hoshi-takanori

2022/06/22 13:00 編集

あ、いえ、実行ファイルが bin に入るのは当然なのですが、Intel Mac (および Rosetta) では /usr/local/bin/node で、M1 ネイティブなら /opt/homebrew/bin/node になります。まぁ、Rosetta でも使えることは使えますので、あえてそれで行くということなら、それはそれでいいんですけどね。 というか、Rosetta を使う使わないに関わらず、brew で入れたものを適切に更新してれば npm もそれなりに新しくなるはずなので、自分は brew で入れた npm (node のおまけ) については npm を個別に更新する必要はない気がしてますけど、それもまた個人の好みというか管理方針ではあります。 いま確認したら、brew で普通に更新すれば node は v18.4.0 が入り、それに付属する npm も 8.12.1 になるはずですね。
den7

2022/06/22 13:58

brew searchではnodeがありそうなんですが、brew upgrade nodeでアップデートしようとするとError: node not installedとエラーが出てしまいます。
hoshi-takanori

2022/06/22 14:11

brew search で出てくるのは brew で入れることのできるもので、実際に入れたものは brew ls です。
den7

2022/06/23 01:56

すみません。本当に基本的なことなのですが、ソース版のnodeを入れていたようです。。。 現在はnodebrew経由で入れ直したのですが、npmとnodeの場所が違うせいか、npmのバージョンは以前と変わらないままです。 調べてみたところ、/Users/〇〇/.nodebrew/current/bin/にもnpmはあるので、そちらのnpmを使いたいのですがうまくいきません。 (npm uninstall -g npmでアンインストールしようとしてもアンインストールできません。)

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

npm

npmは、Node Packaged Modulesの略。Node.jsのライブラリ・パッケージを管理できるツールです。様々なモジュールを簡単にインストールでき、自分でモジュールを作成し公開する際にも使用できます。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。