Mac で Node.js をアップデート

Macの環境

macOS Catalina バージョン10.15.5 での情報です。

バージョン管理のライブラリ

nvm, nodebrew, n などがありますが、一番メジャーなのはnvmのようです。
ので、本稿ではnvmを採用します。
基本的にはQiitaの nvm(Node Version Manager)を使ってNode.jsをインストールする手順 という記事の通りにすればよさそうです。

ちなみにnvmと似たような用語にnpmというものがあります。
違いは上記のQiitaに書いている通りです。

nvmとは、Node Version Managerの略で、Node.jsのバージョン管理するパッケージになります。
npmとは、Node Package Managerの略で、Node.jsで作られたパッケージやライブラリを管理するツールになります。

https://qiita.com/ryouzi/items/5b0158ba1a77bf4b6004

今回はNode 自体のバージョンを更新したいので、nvm コマンドを打っていきます!

いい感じのバージョンをインストールする

というわけで、いい感じの新しいバージョンを調べる。

$ nvm ls-remote
...
       v12.18.2   (LTS: Erbium)
       v12.18.3   (Latest LTS: Erbium)
        v13.0.0
...

v12.18.3 が最新のLTSらしいのでインストール。

$ nvm install v12.18.3
v12.18.3 is already installed.
nvm is not compatible with the npm config "prefix" option: currently set to "/usr/local/Cellar/nvm/0.35.3/versions/node/v12.18.3"
Run `npm config delete prefix` or `nvm use --delete-prefix v12.18.3` to unset it.

(v12.18.3 is already installed. とのことなので、既に入っている??)

$ nvm install --lts --latest-npm

もしくは↑のコマンドでも入ると思います。

とりあえず怒られている。
一応入っているか確認。

$ node -v
v8.11.0

やはりバージョンが切り替わっていないようです。
うーん🤔

バージョンを切り替える

指示にある通り、また、Stackoverflowこちら を参考にしつつ以下のコマンドを打つ。

$ npm config delete prefix
$ npm config set prefix $NVM_DIR/versions/node/v12.18.3

ターミナルを再起動させて(← これ重要)、以下コマンドで確認。

$ node -v
v12.18.3

うまくいった🙆‍♂️

$ npm config list と打つと以下のような表示がされます。 こちらの prefix の設定をうまく書き換えられたということかなと思います。

$ npm config list
...
prefix = "/usr/local/opt/nvm/versions/node/v12.18.3"
...

もしくは一時的にバージョンを切り替える場合

ターミナルに書いている通り、以下のコマンドを打つと一時的にバージョンが切り替わります。

$ nvm use --delete-prefix v12.18.3

ただし、あくまでも一時的にお試しで使う形となり、そのプロセスのみ有効です。
ターミナルを再起動したり、⌘ Cmd + T で別タブでターミナルを新規作成したりすると、$ node -v を打つと前のバージョンが表示されると思います。

最後に

以上です。お疲れ様でした!

Mac で Node.js をアップデート」に2件のコメントがあります

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google フォト

Google アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。