nvm for Windowsのインストール方法・コマンド・環境変数を解説!

この記事では『nvm for Windows』について、

  • nvm for Windowsとは
  • nvm for Windowsのインストール方法
  • nvmのコマンド
  • nvmの環境変数
    • nvm for Windowsをインストールした際に設定された環境変数の確認方法

などを図を用いて分かりやすく説明するように心掛けています。ご参考になれば幸いです。

nvm for Windowsとは

nvm for Windowsとは

nvm for Windowsは、Windows環境で複数のNode.jsバージョンを管理するためのバージョン管理ツールです。

nvm for Windowsを用いることで、特定のバージョンのNode.jsを簡単にインストールすることができます。また、複数の異なるバージョンのNode.jsをインストールして、必要に応じてそれらのバージョンを切り替えて使うこともできます。

もともとnvm(Node Version Manager)というNode.jsのバージョン管理ツールがありますが、このnvmはmacやLinuxなどでしか使用することができず、windowsに対応していませんでした。nvm for WindowsはnvmのWindows版として設計されており、nvm for Windowsをインストールすることで、Windows上でnvmのようにNode.jsのバージョン管理を行えるようになります。

補足

  • nvm for Windowsはnvmとは全く別のプロジェクトとして運営されています。
  • nvm for WindowsはMITライセンスで利用できます

nvm for Windowsのインストール方法

nvm for Windowsをインストールする手順を以下に示します。

nvm for Windowsのインストール手順

  • nvm for Windowsをダウンロードする
  • nvm for Windowsのインストーラを実行する
  • インストーラの指示に従って、nvm for Windowsをインストールする

ではこれから上記の手順について順番に説明します。

nvm for Windowsをダウンロードする

nvm for Windowsのインストーラーをダウンロードするために、お使いのWebブラウザ(Google Chromeなど)で以下リンクに示すGitHubのnvm-windowsリリースページにアクセスします。

nvm-setup.zipがインストーラです。nvm-setup.zipをクリックするとインストーラをダウンロードすることができます(2024年4月4日時点の最新バージョンは1.1.12です)。

nvm for Windowsをダウンロードする

nvm for Windowsのインストーラを実行する

ダウンロードしたnvm-setup.zipを解凍すると、nvm-setup.exeがあります。nvm-setup.exeをダブルクリックすると、インストールが始まります。

nvm-setup.exeをダブルクリックした際に、「このアプリがデバイスに変更を加えることを許可しますか?」と表示された場合には「はい」をクリックしてください。

インストーラの指示に従って、nvm for Windowsをインストールする

インストーラの指示に従って、nvm for Windowsをインストールします。

nvm for Windowsのインストールは以下の手順で行います。インストール先(nvm for Windowsをインストールするディレクトリ)やその他のオプションはデフォルトのままで問題ありませんが、必要に応じて変更できます。

nvm for Windowsのインストール手順

  • ライセンスに同意し、「Next」ボタンをクリックする
  • nvm for Windowsのインストール先を設定する
  • nvm for Windowsのシンボリックリンクの作成先を設定する
  • インストール開始画面で「Install」ボタンをクリックする
  • nvm for Windowsのインストール開始
  • nvm for Windowsのインストール完了

ではこれから上記の手順について順番に説明します。

ライセンスに同意し、「Next」ボタンをクリックする

nvm for Windowsをインストールする01

nvm-setup.exeをダブルクリックすると、最初に上記の画面が表示されます。ライセンスに同意して、「Next」ボタンをクリックします。

nvm for Windowsのインストール先を設定する

nvm for Windowsをインストールする02

nvm for Windowsのインストール先のフォルダを選択する画面が表示されます。特に理由がなければ、デフォルト設定のまま「Next」をクリックします。

nvm for Windowsのシンボリックリンクの作成先を設定する

nvm for Windowsをインストールする03

nvm for Windowsのシンボリックリンクの作成先を選択する画面が表示されます。特に理由がなければ、デフォルト設定のまま「Next」をクリックします。

シンボリックリンク(Symbolic Link)とは

シンボリックリンクは実際のファイルやディレクトリではなく、別の場所にあるファイルやディレクトリを指すパスを含む特殊なファイルのようなものです。nvm for Windowsではこのシンボリックリンクを使用することで、Node.jsのバージョンを切り替えています。

インストール開始画面で「Install」ボタンをクリックする

nvm for Windowsをインストールする04

「インストール準備完了」画面が表示されます。「Install」ボタンをクリックします。

「Install」をクリックした時に、「このアプリがデバイスに変更を加えることを許可しますか?」と表示された場合には「はい」をクリックしてください。

nvm for Windowsのインストール開始

nvm for Windowsをインストールする05

インストールが開始します。インストールが終わるまで少しの時間待ちましょう。

nvm for Windowsのインストール完了

nvm for Windowsをインストールする06

上図の画面が表示されれば、nvm for Windowsのインストールが完了です。「Finish」ボタンをクリックします。

nvmが正常にインストールされたことを確認する

nvmが正常にインストールされたかを確認します。

「PowerShell」または「コマンドプロンプト(cmd)」を起動し、以下のコマンド実行します。

nvm version
# 以下のコマンドでも可能
nvm v

上記のコマンドの実行結果は下記のようになります。インストールしたバージョン(1.1.12など)が正しく表示されればOKです。

PS C:\Users\user01> nvm version
1.1.12

nvmコマンドが実行できない場合、環境変数にNVM_HOME(インストール先フォルダ)やNVM_SYMLINK(シンボリックリンクの作成先フォルダ)が登録されているかを確認しましょう。環境変数については後ほど詳しく説明します。

nvmのコマンド

nvm for Windowsがインストールできたら、「PowerShell」または「コマンドプロンプト(cmd)」で以下のコマンドが実行できます。

  • nvm list or nvm ls
    • インストール済みのNode.jsのバージョンを確認する
  • nvm list available or nvm ls available
    • インストール可能なNode.jsのバージョンを確認する
  • nvm install <バージョン>
    • 特定のバージョンのNode.jsをインストールする
  • nvm use <バージョン>
    • 使用するバージョンを切り替える
  • nvm uninstall <バージョン>
    • インストール済みのNode.jsのバージョンを削除(アンインストール)する

各コマンドについて順番に詳しく説明します。

nvm list or nvm ls

インストール済みのNode.jsのバージョンを確認するには、nvm listまたはnvm lsを実行します。

上記コマンドの実行結果の一例を以下に示します。

PS C:\Users\user01> nvm list

  * 18.16.0 (Currently using 64-bit executable)

上記の実行結果より、今はバージョン18.16.0のNode.jsがインストールされていて、そのバージョンのNode.jsを使用していることが分かります(*が付いているのが現在使用しているNode.jsのバージョンです)。

nvm list available or nvm ls available

インストール可能なNode.jsのバージョンを確認するには、nvm list availableまたはnvm ls availableを実行します。

上記コマンドの実行結果の一例を以下に示します。

PS C:\Users\user01> nvm list available

|   CURRENT    |     LTS      |  OLD STABLE  | OLD UNSTABLE |
|--------------|--------------|--------------|--------------|
|    21.7.2    |   20.12.1    |   0.12.18    |   0.11.16    |
|    21.7.1    |   20.12.0    |   0.12.17    |   0.11.15    |
|    21.7.0    |   20.11.1    |   0.12.16    |   0.11.14    |
|    21.6.2    |   20.11.0    |   0.12.15    |   0.11.13    |
|    21.6.1    |   20.10.0    |   0.12.14    |   0.11.12    |
|    21.6.0    |    20.9.0    |   0.12.13    |   0.11.11    |
|    21.5.0    |   18.20.1    |   0.12.12    |   0.11.10    |
|    21.4.0    |   18.20.0    |   0.12.11    |    0.11.9    |
|    21.3.0    |   18.19.1    |   0.12.10    |    0.11.8    |
|    21.2.0    |   18.19.0    |    0.12.9    |    0.11.7    |
|    21.1.0    |   18.18.2    |    0.12.8    |    0.11.6    |
|    21.0.0    |   18.18.1    |    0.12.7    |    0.11.5    |
|    20.8.1    |   18.18.0    |    0.12.6    |    0.11.4    |
|    20.8.0    |   18.17.1    |    0.12.5    |    0.11.3    |
|    20.7.0    |   18.17.0    |    0.12.4    |    0.11.2    |
|    20.6.1    |   18.16.1    |    0.12.3    |    0.11.1    |
|    20.6.0    |   18.16.0    |    0.12.2    |    0.11.0    |
|    20.5.1    |   18.15.0    |    0.12.1    |    0.9.12    |
|    20.5.0    |   18.14.2    |    0.12.0    |    0.9.11    |
|    20.4.0    |   18.14.1    |   0.10.48    |    0.9.10    |

This is a partial list. For a complete list, visit https://nodejs.org/en/download/releases

CURRENTの列は現在の最新バージョン、LTSの列はLTS(Long Term Support)のバージョンを新しい順に表示しています。

nvm install <バージョン>

nvm list availableまたはnvm ls availableでインストール可能なNode.jsのバージョンを確認を確認したら、特定のバージョンのNode.jsをインストールしてみましょう。

特定のバージョンのNode.jsをインストールするには、nvm install <バージョン>を実行します。例えば、nvm install 20.12.1を実行すると、バージョン20.12.1のNode.jsをインストールすることができます。

上記コマンドの実行結果の一例を以下に示します(以下の実行結果ではインストール前後でnpm listを実行して、バージョン20.12.1のNode.jsがインストールされているかを確認しています)。

PS C:\Users\user01> nvm list # 使用中のバージョンを確認します

  * 18.16.0 (Currently using 64-bit executable)


PS C:\Users\user01> nvm install 20.12.1 # バージョン20.12.1のNode.jsをインストールします
Downloading node.js version 20.12.1 (64-bit)...
Extracting node and npm...
Complete
npm v10.5.0 installed successfully.


Installation complete. If you want to use this version, type

nvm use 20.12.1


PS C:\Users\user01> nvm list  # インストールしたバージョンが追加されていることを確認します

    20.12.1
  * 18.16.0 (Currently using 64-bit executable)

nvm install <バージョン>では特定のバージョンのNode.jsをインストールすることができますが、使用しているNode.jsのバージョンは変わっていません(上記の実行結果にて*が付いているのが現在使用しているNode.jsのバージョンです)。使用するNode.jsのバージョンを切り替えるには、nvm use <バージョン>を実行します。次に、nvm use <バージョン>について説明します。

nvm install latest

最新バージョンをNode.jsをインストールする場合には以下のコマンドを実行します。

nvm install latest

nvm use <バージョン>

複数のバージョンのNode.jsをインストールした場合、nvm use <バージョン>で使用するバージョンを切り替えることができます。例えば、nvm use 20.12.1を実行すると、使用するNode.jsのバージョンを20.12.1に切り替えることができます。

上記コマンドの実行結果の一例を以下に示します(以下の実行結果ではバージョンの切り替え前後でnpm listを実行しています)。

PS C:\Users\user01> nvm list # 使用中のバージョンを確認します

    20.12.1
  * 18.16.0 (Currently using 64-bit executable)

PS C:\Users\user01> nvm use 20.12.1  # バージョン20.12.1のNode.jsを使用するように変更します
Now using node v20.12.1 (64-bit)

PS C:\Users\user01> nvm list # 使用中のバージョンを確認します

  * 20.12.1 (Currently using 64-bit executable)
    18.16.0

nvm use <バージョン>を実行した時に、「このアプリがデバイスに変更を加えることを許可しますか?」と表示された場合には「はい」をクリックしてください。

Node.jsのバージョンを切り替えは、環境変数のNVM_SYMLINKで指定したシンボリックリンクの向き先を切り替えることで行っています。シンボリックリンクの編集に管理者権限が必要な場合、「このアプリがデバイスに変更を加えることを許可しますか?」が表示されます(管理者権限で「PowerShell」または「コマンドプロンプト(cmd)」を起動すれば、表示されなくなります)。

nvm uninstall <バージョン>

インストール済みのNode.jsのバージョンを削除(アンインストール)するには、nvm uninstall <バージョン>を実行します。例えば、nvm uninstall 20.12.1を実行すると、バージョン20.12.1のNode.jsを削除することができます。

上記コマンドの実行結果の一例を以下に示します(以下の実行結果では削除前後でnpm listを実行して、バージョン20.12.1のNode.jsが削除されているかを確認しています)。

PS C:\Users\user01> nvm list # 使用中のバージョンを確認します

    20.12.1
  * 18.16.0 (Currently using 64-bit executable)

PS C:\Users\user01> nvm uninstall 20.12.1 # バージョン20.12.1のNode.jsを削除します
Uninstalling node v20.12.1... done

PS C:\Users\user01> nvm list # 削除したバージョンがなくなっていることを確認します

  * 18.16.0 (Currently using 64-bit executable)

nvmの環境変数

nvm for Windowsは、インストールすると、特定のNode.jsバージョンを使用するための環境変数(NVM_HOMENVM_SYMLINK)を自動的に設定します。

NVM_HOMEはnvm for Windowsがインストールされているディレクトリを示す環境変数です。

NVM_SYMLINKは現在使用中しているNode.jsのバージョンを指し示すためのシンボリックリンクの場所を示す環境変数です。このシンボリックリンクを使用することで、現在使用中のNode.jsのバージョンを簡単に切り替えることができます。

例えば、nvm use 20.12.1を実行すると、nvm for Windowsはバージョン20.12.1のNode.jsがインストールされているディレクトリへの新しいシンボリックリンクをNVM_SYMLINKで指定された場所に作成します。既にNVM_SYMLINKで指定された場所にシンボリックリンクが存在する場合には、バージョン20.12.1のNode.jsがインストールされているディレクトリへのシンボリックリンクに更新します。

nvm for Windowsをインストールした際に設定された環境変数の確認

nvm for Windowsをインストールした際に設定された環境変数にどのような値が設定されているのかを確認してみます。

環境変数の確認方法は下記の手順となります。

環境変数Pathの確認方法

  • Windowsの検索ボックスに「環境変数」と入力する
  • 「システムのプロパティ」画面で「環境変数」ボタンをクリックする
  • 「システム環境設定」に記載されている環境変数を確認する

ではこれから、上記の手順について順番に説明します。

Windowsの検索ボックスに「環境変数」と入力する

nvm for Windowsをインストールした際に設定された環境変数の確認01

Windowsの検索ボックスに「環境変数」と入力します。

「システム環境変数の編集」が表示されたら、「システム環境変数の編集」をクリックしてください。

「システムのプロパティ」画面で「環境変数」ボタンをクリックする

nvm for Windowsをインストールした際に設定された環境変数の確認02

「システムのプロパティ」画面が表示されます。右下にある「環境変数」ボタンをクリックします。

「システム環境設定」に記載されている環境変数を確認する

nvm for Windowsをインストールした際に設定された環境変数の確認03

「環境変数」画面が表示されます。この画面でnvm for Windowsをインストールした際に設定された環境変数の値を確認することができます。

  • NVM_HOME
    • nvm for Windowsがインストールされているディレクトリを指します。
    • この例では C:\Users\user01\AppData\Roaming\nvmとなっており、nvm for Windowsの実行ファイルやインストールされたNode.jsのバージョン情報などがこのディレクトリ内に保持されます。
  • NVM_SYMLINK
    • 現在使用中しているNode.jsのバージョンを指し示すためのシンボリックリンクが作成される場所を指します。
    • この例ではC:\Program Files\nodejsとなっており、シンボリックリンクの本体はC:\Program Files\nodejsにありますが、シンボリックリンクによって、本体はNVM_HOME(C:\Users\user01\AppData\Roaming\nvm)内の現在使用中しているNode.jsバージョンがインストールされているディレクトリに動的にリンクされています。

memo

NVM_SYMLINKが指定するディレクトリ(このケースではC:\Program Files\nodejs)は、現在使用中のNode.jsのバージョン(例えば、20.12.1)がインストールされているNVM_HOME内のディレクトリ(この例ではC:\Users\user01\AppData\Roaming\nvm\v20.12.1)へのシンボリックリンクを作成します。これにより、C:\Program Files\nodejsディレクトリを介してNode.jsの特定のバージョンにアクセスする際、実際にはC:\Users\user01\AppData\Roaming\nvm\v20.12.1ディレクトリ内のファイルが使用されます。

そのため、以下に示すように各フォルダの中身を見ると同じになっています。

nvm for Windowsをインストールした際に設定された環境変数の確認04

また、以下に示すようにNVM_HOMEが指すC:\Users\user01\AppData\Roaming\nvmNVM_SYMLINKが指すC:\Program Files\nodejsは、システムの環境変数pathにも含まれていることが一般的です。これにより、コマンドプロンプトや他のアプリケーションからnvmnodenpmコマンドが実行できるようになっています。

nvm for Windowsをインストールした際に設定された環境変数の確認05

本記事のまとめ

この記事では『nvm for Windows』について、以下の内容を説明しました。

  • nvm for Windowsとは
  • nvm for Windowsのインストール方法
  • nvmのコマンド
  • nvmの環境変数
    • nvm for Windowsをインストールした際に設定された環境変数の確認方法

お読み頂きありがとうございました。