Node.jsを使った開発を続けていると、プロジェクトごとに必要なバージョンが異なるという場面に必ず出会います。
あるプロジェクトではNode.js18系が必須なのに、別のプロジェクトでは20系でないと動かないというケースも珍しくありません。
そんなときに役立つのがバージョン管理ツールです。
Mac環境ではnvmが定番として広く使われていますが、Windows環境ではそのままでは動作しないという壁があります。
そこで登場するのがnvm-windowsという専用ツールです。
今回は「Node.jsのバージョン管理はWindowsでどうする?(nvm-windows:インストール方法:切り替え手順など)」というテーマで、インストール方法から切り替え手順、トラブル対応まで幅広く解説していきます。
これからWindowsでNode.js開発を始める方はもちろん、すでに開発をしている方にも役立つ内容になっているはずです。
ぜひ最後までご覧ください。
WindowsでNode.jsのバージョン管理をするならnvm-windowsが最適解
それではまずWindowsでNode.jsのバージョン管理をどうするべきかについて解説していきます。
結論からお伝えすると、Windows環境でNode.jsのバージョンを柔軟に管理したいならnvm-windowsを導入するのが最も確実な方法です。
公式サイトから配布されているインストーラーを使うだけで、複数バージョンのインストールと切り替えが簡単にできるようになります。
nvm-windowsとは何か
nvm-windowsは、その名の通りWindows向けに作られたNode.jsのバージョン管理ツールです。
coreybutlerという開発者によって公開されているオープンソースのツールで、GitHub上でも活発にメンテナンスされています。
インストールされているNode.jsのバージョンを一覧表示したり、コマンド一つで別のバージョンに切り替えたりできるのが大きな特徴でしょう。
複数プロジェクトを掛け持ちするエンジニアにとっては、まさに必須級のツールと言えます。
なぜWindowsではnvmでなくnvm-windowsなのか
Node.jsの世界で有名なバージョン管理ツールといえば、Linux・Mac向けのnvmを思い浮かべる方も多いでしょう。
しかしnvmはシェルスクリプトをベースに作られているため、そのままではWindowsのコマンドプロンプトやPowerShellでは動作しません。
WSLを使えばnvmをそのまま利用することも可能ですが、通常のWindows環境で完結させたい場合には向いていない方法です。
そこでWindowsのネイティブ環境専用に設計されたnvm-windowsが必要になるわけです。
名前が似ているため混同されがちですが、両者は全く別のプロジェクトである点に注意してください。
導入前に確認しておきたいポイント
nvm-windowsを導入する前に、いくつか確認しておきたい点があります。
まず、すでにNode.jsを公式インストーラーで導入している場合は、事前にアンインストールしておく必要があります。
次に、管理者権限でのインストールが推奨されている点も押さえておきましょう。
さらに、既存のグローバルパッケージやパスの設定が競合しないかどうかも確認しておくと、後々のトラブルを防げます。
nvm-windowsとnvmは名前は似ていますが、内部の仕組みは全く異なるツールです。
Windows環境で「nvm install」と検索して出てくる情報の中には、Mac・Linux向けの手順が混ざっていることもあります。
公式ドキュメントを必ず確認し、Windows専用の手順に従うことが重要です。
nvm-windowsのインストール方法
続いてはnvm-windowsのインストール方法を確認していきます。
インストール自体はそれほど難しくなく、公式のインストーラーを使えば数分で完了します。
事前準備(既存Node.jsのアンインストール等)
まずコントロールパネルのプログラムと機能から、既存のNode.jsをアンインストールしてください。
アンインストール後は、環境変数のPathに古いNode.jsのパスが残っていないかも確認しておきましょう。
npmでグローバルインストールしていたパッケージ一覧も、事前にメモしておくと再インストール時に便利です。
インストーラーのダウンロードと実行手順
GitHubのnvm-windowsのリリースページから、nvm-setup.zipをダウンロードします。
ダウンロードしたZIPファイルを解凍し、中に入っているnvm-setup.exeを実行してください。
インストールウィザードが起動したら、nvmのインストール先フォルダと、Node.jsのシンボリックリンクを作成する場所を指定します。
特にこだわりがなければ、デフォルトの設定のまま進めて問題ありません。
インストール完了後は、コマンドプロンプトまたはPowerShellを新しく開いて、次のコマンドを入力してください。
nvm version
バージョン番号が表示されれば、インストールは正常に完了しています。
インストール後の動作確認方法
インストールが終わったら、実際にNode.jsをインストールできるか試してみましょう。
nvm install latestと入力すると、最新版のNode.jsが自動的にダウンロードされます。
インストール後はnvm useコマンドで有効化し、node -vでバージョンが正しく表示されるか確認してください。
ここまでできれば、環境構築は無事に完了です。
nvm-windowsで複数バージョンをインストールする方法
続いては複数バージョンのNode.jsをインストールする方法を確認していきます。
nvm-windowsの強みは、まさに複数バージョンを共存させられる点にあります。
特定バージョンをインストールするコマンド
特定のバージョンをインストールしたい場合は、nvm install の後にバージョン番号を指定します。
| コマンド例 | 内容 |
|---|---|
| nvm install 18.20.0 | Node.js 18系の特定バージョンをインストール |
| nvm install 20.11.0 | Node.js 20系の特定バージョンをインストール |
| nvm install latest | 最新の安定版をインストール |
| nvm install lts | 最新のLTS版をインストール |
バージョン番号を細かく指定できるため、プロジェクトの要件に合わせた環境を正確に再現できます。
LTS版と最新版の違いと選び方
Node.jsにはLTSと呼ばれる長期サポート版と、最新機能が反映される最新版があります。
業務用のプロジェクトであれば、安定性を優先してLTS版を選ぶのが基本でしょう。
一方で、新しい構文や機能を試したい場合には最新版を使う選択肢もあります。
迷ったときはどちらを選ぶべきか悩む方も多いのではないでしょうか。
結論としては、実務ではLTS版、学習や検証目的では最新版という使い分けがおすすめです。
インストール済みバージョンの確認方法
すでにインストールしたバージョンを一覧で確認したいときは、nvm list コマンドを使います。
現在有効になっているバージョンには、矢印などの印がついて表示されます。
不要になった古いバージョンは、nvm uninstall の後にバージョン番号を指定すれば削除可能です。
定期的に整理しておくと、ディスク容量の節約にもつながります。
nvm-windowsでバージョンを切り替える手順
続いてはnvm-windowsでのバージョン切り替え手順を確認していきます。
インストールした複数のバージョンを、プロジェクトに合わせて瞬時に切り替えられるのがnvm-windows最大の魅力です。
nvm useコマンドの使い方
バージョンを切り替える基本コマンドは nvm use です。
nvm use 18.20.0
上記のように入力すると、Node.jsのバージョンが18.20.0に切り替わります。
切り替え後にnode -vを実行すれば、実際に反映されているか確認できます。
コマンド一つで切り替えが完了するため、複数プロジェクトを行き来する作業も驚くほどスムーズになります。
プロジェクトごとにバージョンを切り替えるコツ
プロジェクトフォルダごとに必要なバージョンをメモしておく運用がおすすめです。
READMEファイルなどに使用バージョンを明記しておけば、チームメンバーとの認識のずれも防げるでしょう。
フォルダを移動するたびに手動でnvm useを実行する必要がある点は、覚えておきたい注意点です。
自動切り替えを実現したい場合は、後述する運用ルールの工夫が役立ちます。
デフォルトバージョンの設定方法
PC起動時やターミナルを開いた際に自動で使いたいバージョンがある場合は、デフォルト設定が便利です。
nvm alias default の後にバージョン番号を指定することで、デフォルトバージョンを設定できます。
特に指定バージョンがない一時的な作業のときは、このデフォルト設定があると余計な手間を省けます。
nvm-windows利用時によくあるトラブルと対処法
続いてはnvm-windows利用時に発生しやすいトラブルとその対処法を確認していきます。
便利なツールとはいえ、環境によってはいくつかのつまずきポイントが存在します。
パスが通らない・コマンドが認識されない場合
nvmコマンドやnodeコマンドが認識されないというトラブルは非常によくあるケースです。
多くの場合、環境変数Pathにnvm-windowsのインストールフォルダが正しく登録されていないことが原因でしょう。
システムのプロパティから環境変数を開き、Pathの中身を確認してみてください。
設定を変更した後は、必ずコマンドプロンプトやPowerShellを再起動する必要があります。
管理者権限に関するエラー
nvm useやnvm installを実行した際に、アクセスが拒否されるというエラーが出ることがあります。
このエラーの多くは、管理者権限でターミナルを起動していないことが原因です。
コマンドプロンプトやPowerShellを右クリックし、管理者として実行を選んで再度試してみましょう。
それでも解決しない場合は、セキュリティソフトによるブロックも疑ってみる価値があります。
npmのグローバルパッケージが引き継がれない問題
バージョンを切り替えると、以前グローバルインストールしていたnpmパッケージが使えなくなることがあります。
これはnvm-windowsの仕様上、バージョンごとにグローバルパッケージの環境が分離されているためです。
よく使うパッケージについては、バージョンを切り替えるたびに再インストールする、もしくはインストール用のスクリプトを用意しておくと効率的でしょう。
トラブルの多くは、環境変数の設定ミスか権限不足が原因です。
まずはターミナルの再起動と管理者権限での実行を試すだけで、解決するケースも少なくありません。
それでも直らない場合は、一度nvm-windowsを完全にアンインストールし、再インストールするのも有効な手段です。
nvm-windows利用時の注意点とおすすめの運用ルール
続いてはnvm-windowsを実務で使う際の注意点と、おすすめの運用ルールを確認していきます。
個人開発だけでなく、チーム開発で使うことを想定した工夫も紹介していきます。
nvmとnvm-windowsを混同しないこと
先ほども触れましたが、nvmとnvm-windowsはコマンド体系が似ている一方で、内部構造は全く異なります。
調べ物をする際に、うっかりMac・Linux向けの記事を参考にしてしまうと、コマンドが通らず混乱する原因になるでしょう。
検索する際は「nvm-windows」というキーワードで探すことを意識してみてください。
チーム開発でのバージョン統一方法
チームで開発をしていると、メンバーごとにNode.jsのバージョンがばらばらになってしまう問題が起こりがちです。
これを防ぐために、プロジェクトのルートに使用バージョンを明記したファイルを置いておく方法がおすすめです。
nvm本体のように.nvmrcファイルを完全に自動認識する機能はnvm-windowsにはありませんが、ファイルにバージョンを記載しておき、READMEやセットアップ手順に沿って手動でnvm useを実行してもらう運用で十分に代用できます。
簡単なセットアップスクリプトを用意しておけば、新規メンバーのオンボーディングもスムーズになるはずです。
| 運用ルール | 目的 |
|---|---|
| 使用バージョンをファイルに明記 | メンバー間の認識統一 |
| セットアップ手順書の整備 | 新規参加者の負担軽減 |
| 定期的な不要バージョンの削除 | ディスク容量の節約 |
| CI環境でのバージョン固定 | 本番環境との差異防止 |
定期的なアップデートと不要バージョンの整理
Node.js自体は頻繁にバージョンアップが行われるツールです。
セキュリティ面を考えると、LTS版であっても定期的な更新は欠かせません。
使わなくなった古いバージョンはこまめに削除し、環境をシンプルに保つことをおすすめします。
nvm-windows自体のアップデートも忘れずに行っておくと、新しいNode.jsバージョンへの対応もスムーズでしょう。
まとめ
今回は「Node.jsのバージョン管理はWindowsでどうする?(nvm-windows:インストール方法:切り替え手順など)」というテーマで解説してきました。
Windows環境でNode.jsのバージョンを柔軟に管理したいなら、nvm-windowsの導入が最もシンプルで確実な方法です。
インストール自体は数分で完了し、複数バージョンの切り替えもコマンド一つで行えます。
トラブルが起きた場合も、環境変数と管理者権限を見直すだけで解決することがほとんどでしょう。
チームで開発をする際は、使用バージョンを明記するなどのルールを整えておくと、より安心して運用できます。
ぜひこの記事を参考に、快適なNode.js開発環境を構築してみてください。