Node.Jsのインストールやバージョン切替が簡単にできるnvm-for-Windowsです。 proxy等の問題でnvm installでNode.Jsをインストールできない場合は、マニュアルインストールが必要となりますが、鍵はnvmのフォルダの下にNode.Jsのバージョン名のフォルダを作り、そのフォルダにNode.Jsをインストールするだけです。 ただ注意点とかあるのでお役に立てれば幸いです。
nvm(Node.js Version Manager) for windows
因みにnvm-for-windowsはマイクロソフトもNode.Jsのインストール用に勧めています。
*LinuxやMacOSではnodebrewがあるのでnvmは必要ないと思います。
nvm インストール
注意 既に Node.Jsがインストールされている場合
nvmをインストールする前に既にNode.Jsがインストールされている場合は、nvmのインストール前に以下をする。(バックアップを取る。 npmとNode.Jsを削除。)
npmrcのバックアップを取る(グローバルとユーザー)
- グローバルのnpmrc configファイルのバックアップを取る。 コマンドプロンプトでnpm list -gでnpmの場所がわかるので、その下の/etcフォルダ内にグローバルnpmrcファイルがあるはずです。 私の場合は、C:\Users\<user_name>\AppData\Roaming\npm\etcでした。
- 必要に応じてユーザー設定の.npmrcファイルもバックアップを取っておく。 場所の確認は、npm config editでノートパッドにファイルが表示されるので、『名前を付けて保存』を選ぶとフォルダが分かります。 .npmrcファイルが表示されない場合は、ファイルの種類をテキスト文書(*.txt)でなく『すべてのファイル(*.*)』とすると表示されます。 また.npmrcは隠しファイルなので、エクスプローラーでは『隠しファイル』も表示に設定していないと表示されません。
npm と Node.Js を完全削除
- コマンドプロンプトで
npm cache clean --force
とする。 - プログラムのアンインストールでNode.Jsを選択してアンインストールする。
- PCを再起動する。
- npmはnpm list -gで表示されたフォルダを削除する。
- where nodeで表示されるnode.jsのフォルダも削除する*。
- 以下のフォルダを検索し、もしフォルダが存在していたらそのフォルダごと削除する。
C:\Program Files (x86)\Nodejs
C:\Program Files\Nodejs
C:\Users\{User}\AppData\Roaming\npm
(or%appdata%\npm
)C:\Users\{User}\AppData\Roaming\npm-cache
(or%appdata%\npm-cache
)C:\Users\{User}\AppData\Local\Temp\npm-*
- %PATH%環境変数をみてもしNodeJsやnpm関係しそうであれば削除する。
『node.jsを完全に削除する方法(英語)』を参考にしました。
*where nodeはコマンドプロンプトだけで動作します。 powershellでは動作しませんでした。
nvm インストール
- https://github.com/coreybutler/nvm-windows/releases からnvm-setup.zipをダウンロード。
- nvm-setup.zipをダウンロードフォルダ内で展開
- nvm-setupフォルダ内のnvm-setup.exeを右クリックして『管理者として実行』
- warningが表示された場合は、そのままRun、Installを選択してインストール。
*1.1.8はWindowsのSiging Certificateが入っていないのでWarningが出るようです。1.1.9はCertificateが入っているようです。。 - インストールが完了したらコマンドプロンプトで以下を実行して動作確認してみてください。 nvmのバージョンが表示されるはずです。
- https://github.com/coreybutler/nvm-windows/releases からnvm-setup.zipをダウンロード。
- nvm-setup.zipをダウンロードフォルダ内で展開
- nvm-setupフォルダ内のnvm-setup.exeを右クリックして『管理者として実行』
- warningが表示された場合は、そのままRun、Installを選択してインストール。
*1.1.8はWindowsのSiging Certificateが入っていないのでWarningが出るようです。1.1.9はCertificateが入っているようです。。 - インストールが完了したらコマンドプロンプトで以下を実行して動作確認してみてください。 nvmのバージョンが表示されるはずです。
nvm -v
- バージョンが表示されなければターミナル(コマンドプロンプト)を再起動してもう一度上記を試してみてください。
nvmに対応したNode.Jsのマニュアルインストール方法
ここが肝です。
Node.Js のインストーラーをダウンロード
- 私の場合、Windows 64bitなので上記nodejsのサイトからWindows(x64)用のnode-v16.14.2-x64.msiをダウンロードフォルダにダウンロード。
- nvmをインストールしたフォルダ(C:\Users\<user_name>\AppData\Roaming\nvm)の下に、インストールするNodeJSのバージョンのv16.14.2フォルダ(C:\Users\<user_name>\AppData\Roaming\nvm\v16.14.2)を作ります。
%AppData%/Roaming/nvm> mkdir v16.14.2
- NodeJSをダウンロードしたnode-v16.14.2-x64.msiをダブルクリックでインストールする際インストール先を聞いてくるので、作ったフォルダ(C:\Users\<user_name>\AppData\Roaming\nvm\v16.14.2)を指定してインストールします。(この/nvmフォルダのバージョン名のフォルダにインストールするのがマニュアルインストールでnvmに対応する鍵です。 たったこれだけ。)
Node.Js のバージョン確認
これでバージョーンが確認されるはずです。
> nvm ls
Node.Js 選択
使用するNode.Jsをバージョン指定で選択
> nvm use 16.14.2 //指定したバージョンのNodeJSを使えます。
Node.Jsのバージョンを確認して見てください
> node -v
以前古いバージョンの Node.Js が入っていた場合
マニュアルインストールしてnvmに対応させた新しいバージョンのNode.Jsは以前入れていた古いバージョンのNode.Jsで作られたpackage-lock.jsonのバージョンと異なり、old lock file warningが大量に出てきて動作には支障ないのですが鬱陶しいので、npm install –package-lock-onlyでpackage-lock.jsonをupgradeしました。(Proxyでnpm出来ないときはZscalerによるものかもしれないので、その時はここをご参照ください。)
// 以下を設定し、念のためコマンドプロンプトも以下設定を確実に読み込ませる為、 // 再起動しechoで確認してから実行しましたがインストールできませんでした。 // Pythonのpipはこの設定でアクセスできるようになります。 set HTTP_PROX="http://proxy._ _ _.co.jp:8080" set HTTPS_PROX="http://proxy._ _ _.co.jp:8080" // その後、ログインユーザーidと、ログインパスワードを設定してみましたが、インストールできませんでした。 // VScodeのsetting.jsonのproxyに、proxyアドレスとログインidとパスワード設定すると拡張機能にアクセスできるようになりました。 set HTTP_PROX="http://<user_id>:<password>@proxy._ _ _.co.jp:8080" set HTTPS_PROX="http://<user_id>:<password>@proxy._ _ _.co.jp:8080"
nvm の場所
nvmインストールフォルダ
C:\Users\<user_name>\AppData\Roaming\nvm
Node.jsインストールフォルダ
C:\Users\<user_name>\AppData\Roaming\nvm\v16.14.2
nvm よく使うコマンド一覧
Windowsコマンドプロンプトでの実行です。 nvm use 等はコマンドプロンプトが管理者権限でないと切替できません。
nvm ls //インストールされたNodeJSが表示されるはずです。 nvm list available //インストール可能なバージョン一覧表示 nvm install 16.14.2 //インストールできるはずでしたが出来ませんでした。 nvm use 16.14.2 //指定したバージョンのNodeJSを使えます。 nvm on nvm off //以下のどれもZscalerがある場合はインストールできませんでした。 nvm proxy none nvm proxy http://proxy._ _ _.co.jp:8080 //proxyとhttps-proxyの用法設定して、nvm off ->onをしましたがインストールできませんでした。 nvm https-proxy http://proxy._ _ _.co.jp:8080 // ログインidとパスワードも入れても試してみましたがインストールできませんでした。 nvm proxy http://<user_id>:<password>@proxy._ _ _.co.jp:8080 nvm https-proxy http://<user_id>:<password>@proxy._ _ _.co.jp:8080 // @=>%40, .=>. , _=>_ , ?=>%3F , % =>%25
nvm での Node.Jsの自動インストール
nvm install 16.14.2 // nvm install バージョン番号 // 普通は上記でNodeJSをインストールできます
nvm Update
- nvm-update.zipをダウンロード
- 展開
- nvm-update.exeをダブルクリック
- 或いはコマンドプロンプトで nvm-update.exe 1.1.8 /sとバージョン指定でUpdate可能
コメント