Node.jsのバージョンをNVM for Windowsで切り替える
記事更新情報
- NVMインストール時とNVM実行時に、管理者権限で実行すべき事を追記
複数の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. ターミナルを立ち上げている場合は一度閉じてインストールされているか確認
既にターミナル / コマンドプロンプト / パワーシェルを立ち上げている場合は、一度閉じて、再起動します。
なお、この際に、管理者権限で実行するようにしてください。
管理者権限で実行しないと、Nodeをインストール後、node -v
でバージョンを確認しようとすると、access is denied
とエラーが出る可能性があるためです。
そして、以下のコマンドを打って、バージョンが表示されれば完了です。
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