開発で使用している自身のローカルPCで、意図せずNodeのバージョンを最新にしてしまったので、アンインストールしてから元のバージョンでインストールし直した。
しかし、日が経つといつの間にかバージョンが最新に戻っている。
その度にアンインストール、旧ver再インストールを繰り返し、cacheの削除なども試みたが原因不明。
この際なので、ノードのバージョン管理ツール、fnmで回避することにした。
fnmの使い方
fnmは、Fast Node Managerという、Node.jsのバージョンを自由に切り替えることができるようにするツール。
Gitから、fnm をダウンロードする。(fnmwindows.zip)
解凍して以下に格納 (nodeと同じ階層にした)
C:\Program Files
環境変数に以下のパスを追加
C:\Program Files\fnm-windows
PC再起動してから、動作確認
fnm -V // バージョンが表示されたらインストール完了
fnmで、使用したいNode.jsバージョンをインストール
fnm install XX.XX.XX
インストールしたバージョンに切り替える
fnm use XX.XX.X
特定のバージョンをデフォルトにする ※自分の環境ではうまく動かなかったが
fnm default XX.XX.X
インストール済みのバージョン一覧を確認する
fnm list
インシデント
アクセスが拒否されました
ノードのバージョンをインストールしようとするとエラー。
error: Can't download the requested binary: アクセスが拒否されました。 (os error 5)
対象のバージョンが存在しないバージョンだった。他のバージョンに変えて成功。
インストールしたバージョンを使用しようとしたらエラー
error: We can't find the necessary environment variables to replace the Node version.
You should setup your shell profile to evaluate 'fnm env`, see https://github.com/Schniz/fnm#shell-setup
Check out our documentation for more information: https://fnm.vercel.app
セットアップが必要だからhttps://github.com/Schniz/fnm#shell-setupを見てくれとのこと。
読み解くと、コマンドプロンプトの場合は以下のコマンドを、ノードのバージョン切り替え前に行う必要がある。
FOR/f "tokens=*" %i IN ('fnm env --use-on-cd') DO CALL %i
この後で、インストールしたバージョンに切り替える
fnm use XX.XX.X
コメント