複数のNode.jsのバージョンをプロジェクトに応じて変更するという事を、NVM for Windowsで行う手順をまとめます。 既にNode.jsをインストールしていたり、NVMをC:\Program Filesにインストールしてしまった際のエラーの対処法も記載します。

NVM for Windows と他のNode.jsバージョン管理ツール

NVMはNode.jsのバージョンを切り替えたりできる管理ツールです。このようなバージョン管理ツールは他にも、以下のようなものがあります。

  • NVM (!)
  • n
  • nodist

少しややこしいのですが、NVM for Windowsのリポジトリでも解説されているように、NVM for WindowsはNVMとは別プロジェクトであって、全く別の思想で作られているとの事です。 言語もGOで記述されているようです。

NVMもnも、Mac/LinuxのツールでWindowsでは利用できません。

Windowsの場合は、NVM for Windows か、nodist が利用できます。

インストール手順

00. 前提 : Node.js と NPMをアンインストールしておく

既にNode.js、NPMをインストールしている場合は、アンインストールしておく必要があります。

さらに、Node.jsがインストールされていたディレクトリも残っているようでしたら削除する必要があります。例えば、C:\Program Files\nodejsなどのディレクトリです(インストールされた方によって異なります)。

さらにグローバルにインストールされたNodeモジュールがバッティングしないように、既存のnpmのインストール先ディレクトリも削除しておきます。

通常は以下のディレクトリだと思います。
C:\Users\<user>\AppData\Roaming\npm

念のためバックアップを取っておきましょう

01. インストーラーのダウンロード

以下のページから最新リリースのインストーラーがダウンロードできます。
Releases · coreybutler/nvm-windows

nvm-setup.zipがインストーラーです。

マニュアルでインストールしたい方向けにはnvm-noinstall.zipというパッケージが配布されています。

英語ですが、こちらが公式のインストール手順です。 ZIPファイルを解凍して、インストールしたい場所に移動した後に、install.cmdをダブルクリックする事で環境変数を設定してくれるようです。
Home · coreybutler/nvm-windows Wiki

02. 実行ファイルをダブルクリック

ダウンロードしたnvm-setup.zipを解凍するとnvm-setup.exeが入っていますので、これをダブルクリックして実行します。

03. インストール先を選択してインストール

デフォルトだとC:\Users\{username}\AppData\Roamingになると思います。 もし、変更したい場合は適宜変更します。

その際の注意点は、スペースが含まれるフォルダを選ばない事です。スペースが含まれるとNVM実行時に以下のようなエラーが出てしまいます。

exit status 1: 'インストール先のディレクトリ' is not recognized as an internal or external command, operable program or batch file.

04. ターミナルを立ち上げている場合は一度閉じてインストールされているか確認

既にターミナル / コマンドプロンプト / パワーシェルを立ち上げている場合は、一度閉じて、再起動します。

そして、以下のコマンドを打って、バージョンが表示されれば完了です。

nvm version

NVMの操作

Node.jsのインストール

以下のコマンドでNode.jsをインストールします。

nvm install 0.0.0

0.0.0の箇所で、バージョンを指定します。

また、以下のようにすると最新版がインストールされます。

nvm install latest

インストールしたバージョンを確認する

以下のコマンドでインストールされているNode.jsのバージョンの一覧が表示されます。

nvm list

任意のバージョンを利用する

以下のコマンドで任意のバージョンを指定して利用することができます。

nvm use 0.0.0

指定したら、node -vコマンドでnodeのバージョンを確認できます。

NVMでNode.jsがインストールできない時

もしかしたらコマンドツールを管理者として実行するとインストールできるかもしれません。

[忘れがちな事] リンターの再インストールが必要

既にNode.jsとNPMをインストールしていて、リンターを利用している場合は、NVMインストール前にアンインストール・削除してしまっているため、それぞれのNode.jsのバージョンでリンターをインストールする必要がありますね。

忘れそうです。

CSSLint、JSHintの場合は以下のコマンドでグローバルにインストールできます。

CSSリンターの場合

npm install -g csslint

JSHintの場合

npm install -g jshint

テキストエディタで利用するためグローバルにインストールしています。

参考記事

NVM for Windows公式リポジトリ
coreybutler/nvm-windows: A node.js version management utility for Windows. Ironically written in Go.

NVM for Windowsの一般的なエラーを解説してくれる記事
PTQ | common issues when using nvm on Windows


執筆者情報
Profile Icon

ウェブ&マーケティングディレクター

清水公太

Web、映像、雑誌などの制作現場で、企画、デザイン、撮影、コーディング、マーケティング、業務改善などを経験してきました。 守備範囲は広めの雑食性のディレクターです。