🏞️
nodenvでNode.jsのバージョンを切り替える
プロジェクトごとにNode.jsのバージョンを簡単に切り替えられるnodenvの使い方をメモしておきます。
環境
- macOS Big Sur 11.4
nodenvをインストールする
Homebrewをインストールしていない場合は、先にHomebrewをインストールします。
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
nodenvをインストールします。
$ brew install nodenv
利用しているシェルに応じて、次の1行を書き込みます。
~/.bashrc or ~/.zshrc
eval "$(nodenv init -)"
ここまで設定できればターミナルを閉じて、再度開きます。
nodenvの設定が完了しているかどうかを確認します。以下のような結果になればOKです。
$ curl -fsSL https://github.com/nodenv/nodenv-installer/raw/master/bin/nodenv-doctor | bash
Checking for `nodenv' in PATH: /usr/local/bin/nodenv
Checking for nodenv shims in PATH: OK
Checking `nodenv install' support: /usr/local/bin/nodenv-install (node-build 4.9.43)
Counting installed Node versions: 1 versions
Auditing installed plugins: OK
指定のバージョンのNode.jsをインストールする
# インストール可能なNode.jsのバージョン一覧
$ nodenv install -l
...
15.14.0
16.0.0
16.1.0
16.2.0
16.3.0
...
# Node.jsの15.14.0と16.3.0をインストールする
$ nodenv install 15.14.0
$ nodenv install 16.3.0
# nodenvに認識させる
$ nodenv rehash
Node.jsのバージョンを切り替える
# インストールされているNode.jsのバージョン一覧
$ nodenv versions
15.14.0
16.3.0
# ローカル(カレントディレクトリ配下)で利用するNode.jsのバージョンを設定する
$ nodenv local 15.14.0
# グローバル(システム全体)で利用するNode.jsのバージョンを設定する
$ nodenv global 16.3.0
nodenv rehash
を自動化する
(オプション)nodenvでNode.jsをインストールしたり、npm install -g
したりした際、それをnodenvに認識させるために以下のコマンドを実行する必要があります。
$ nodenv rehash
毎回このコマンドを実行するのが面倒な場合、nodenv-package-rehashというnodenvのプラグインをインストールすれば解決します。
$ git clone https://github.com/nodenv/nodenv-package-rehash.git "$(nodenv root)"/plugins/nodenv-package-rehash
利用しているシェルに応じて、行を置き換えます。
~/.bashrc or ~/.zshrc
- eval "$(nodenv init -)"
+ eval "$(nodenv init - --no-rehash)"
ここまで設定できればターミナルを閉じて、再度開きます。
最後に、以下コマンドを実行すれば設定完了です。
$ nodenv package-hooks install --all
これで、今後nodenv rehash
を実行する必要はなくなります。
Discussion