Node.jsのバージョンアップ for Mac


Macで動いているNode開発環境を最新状態にするための方法です。
(いつも忘れちゃうので、書き留めておこうと思います。)

手順は以下のとおりです。
 1. 各種ツールの最新バージョンを確認する。
 2. 各種ツールを最新にする。

各種ツール最新(安定)バージョンを確認する。

私の環境は、Homebrewで作ったので、以下のものを確認します。
(2020/5/1時点の情報です。)

  • Homebrew
  • Nodebrew
  • Node.js

Homebrew:

Homebrewのバーション情報は、こちら から確認できます。

私の環境は、ちょっと古いですね。

Homebrew
   > brew -v
     Homebrew 2.0.0
     Homebrew/homebrew-core (git revision 0b1c; last commit 2019-02-04)
     Homebrew/homebrew-cask (git revision 1e6e6; last commit 2019-02-05)

Nodebrew:

Nodebrewのバージョン情報は、こちら から確認できます。

私の環境は、これも古い、、、(そりゃそうか。)

nodebrew
   > nodebrew -v
     nodebrew 0.9.7

Node.js:

Node.jsのバージョン情報は、こちら から確認できます。

これも、古いですね。

node.js
   > node -v
     v10.16.0

各種ツールを最新にする。

先ほどのステップで確認した各種ツールを最新にします。

Homebrew:

brew updateコマンドでアップデートします。

Homebrew
   > brew update
    // しばらく時間かかっても、気長に待つ、、、、

   > brew -v
     Homebrew 2.2.14
     Homebrew/homebrew-core (git revision b303d; last commit 2020-05-01)
     Homebrew/homebrew-cask (git revision 90c68; last commit 2020-05-01)

Nodebrew:

brew upgrade nodebrewコマンドでアップデートします。

nodebrew
   > brew upgrade nodebrew

   > nodebrew -v
     nodebrew 1.0.1

Node.js:

Node.jsは、nodebrewを使って、アップデートします。
まずは、インストールできるバージョンの確認です。

   > nodebrew ls-remote
   // バージョンがずらりと並びます。

   v12.0.0   v12.1.0   v12.2.0   v12.3.0   v12.3.1   v12.4.0   v12.5.0   
   v12.6.0   v12.7.0   v12.8.0   v12.8.1   v12.9.0   v12.9.1   v12.10.0  
   v12.11.0  v12.11.1  v12.12.0  v12.13.0  v12.13.1  v12.14.0  v12.14.1  
   v12.15.0  v12.16.0  v12.16.1  v12.16.2  v12.16.3

   v13.0.0   v13.0.1   v13.1.0   v13.2.0   v13.3.0   v13.4.0   v13.5.0   
   v13.6.0   v13.7.0   v13.8.0   v13.9.0   v13.10.0  v13.10.1  v13.11.0  
   v13.12.0  v13.13.0  v13.14.0

先ほど調べた、安定版:v12.16.3 でアップデートします。

   > nodebrew install-binary v12.16.3

   //インストールが始まります。
   Fetching: https://nodejs.org/dist/v12.16.3/node-v12.16.3-darwin-x64.tar.gz
   ######################################################################## 100,0%

   // しばらく待つと、完了します。
   Installed successfully

利用可能なバージョンをリスト表示し、使用するバージョンを指定します。

   > nodebrew list
     v10.16.0
     v12.16.3

   > nodebrew use v12.16.3
     use v12.16.3

最後にバージョンを確認します。

   > nodebrew ls
   v12.16.3

   current: v12.16.3

ついでに、nodeのバージョンも確認しておきましょう。

   > node -v
     v12.16.3

以上で、最新バージョンに更新されました。

ちなみに、nodebrew でインストールしたモジュールは、以下のディレクトリにインストールされています。

/Users/[ユーザー名]/.nodebrew

このディレクトリにある currentというシンボリックリンクで、今使っているバージョンを判別しています。

current -> /Users/[ユーザー名]/.nodebrew/node/v12.16.3

よくあるエラー対処法

その1: node -vでエラーが発生する。

node -v コマンドを実行した時、下記のようなエラーが発生する場合があります。
.bash_profileの設定が正しくできていないことが原因です。

   > node -v
     -bash: node: command not found

その時の対処法を以下に記載します。

1. .bash_profileにPATHを設定します。

   vi ~/.bash_profile

   //以下の行を記述する
   export PATH=$HOME/.nodebrew/current/bin:$PATH

2. .bash_profileを有効化します。

   source ~/.bash_profile


その2: node -vで表示されるバージョンが異なる。

node -v コマンドを実行した時、nodebrew use で指定したものと異なるバージョンが表示されることがあります。

   > node -v
     v10.16.0

nodebrewのインストールの仕様が変わった、過去に別の方法で、Node.jsをインストールしたなど、いくつか原因は考えられます。

そんな時は、まずnodebrewでインストールされたnodeモジュールを探します。
mdfind コマンドを使うと便利です。

   > mdfind v12.16.3 -name

     /usr/local/var/nodebrew/src/v12.16.3
     /usr/local/var/nodebrew/src/v12.16.3/node-v12.16.3-darwin-x64.tar.gz
     /usr/local/var/nodebrew/node/v12.16.3

usr/local/var/nodebrew/node/v12.16.3 にインストールされていることがわかります。

このディレクトリのnodeを利用するためには、モジュールがインストールされたPATHに、currentのシンボリックリンクを作成します。

   cd /Users/[ユーザー名]/.nodebrew
   ln -s /usr/local/var/nodebrew/node/v12.16.3 current

これで、use で指定したバージョンが使えるようになります。

   > node -v
     v12.16.3

Macの Node.js環境をバージョンアップする方法の説明は、以上で終わりです。