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

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

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

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

MacOS(OSX)

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

Q&A

解決済

1回答

890閲覧

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

den7

総合スコア28

npm

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

MacOS(OSX)

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

0グッド

1クリップ

投稿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

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

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でアンインストールしようとしてもアンインストールできません。)
guest

回答1

0

自己解決

色々な方法でインストールしていたので不要ファイルが消えていないことが原因だったようです。
コマンドで消せない(消し方がわからない)npmや.nodebrewなどがあったので、あまり良くない方法だと思われますが、Finderから直接フォルダやファイルを削除して新しくnodeを入れ直しました。

投稿2022/06/23 10:53

den7

総合スコア28

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問