/Macでnodeのバージョン切り替えnodebrewの使い方
nodebrewとは
nodebrewは、node.jsを自分のマシン内でversion管理するためのツール。
問題点
あるプロジェクト内でnodeのバージョンが違うよと怒られた。
nodeのバージョンを確認すると、v14.13.0
Kaoris-MacBook-Pro:mobliz tokashiki$ yarn yarn install v1.22.5 [1/5] 🔍 Validating package.json... error weseek@1.0.0: The engine "node" is incompatible with this module. Expected version ">=8 <11". Got "14.13.0" error Found incompatible module. info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command. Kaoris-MacBook-Pro:mobliz tokashiki$ node -v v14.13.0
nodebrewにインストールされているバージョンを見てみるとv10.22.1
で、currentの指定がnoneとなっていた.
Kaoris-MacBook-Pro:mobliz tokashiki$ nodebrew ls v10.22.1 current: none
そこでnodebrew use v10.22.1
を実行しv10.22.1
を指定したが
Kaoris-MacBook-Pro:mobliz tokashiki$ nodebrew use v10.22.1 use v10.22.1
再度nodeのバージョンを確認してみると、
Kaoris-MacBook-Pro:mobliz tokashiki$ node -v v14.13.0
のままであるという問題に直面。
つまり、nodebrew
で指定したnodeのバージョンと、実際に適応されているnodeのバージョンが違う。
わかったこと
グローバルなnodeのバージョンをチェック
Kaoris-MacBook-Pro:~ tokashiki$ node -v v14.13.0
ここでも同じくv14.13.0
が使用されている。
つまり、グローバルなnodeのバージョンがローカルなところでも適用されているようだ。
解決方法
解決方法は主に二つ
- グローバルなnodeのバージョンを
v10.22.1
に下げる - ローカルなnodeのバージョンだけ
v10.22.1
が適用されるようにする
私の場合、グローバルなnodeのバージョンは、他プロジェクトで使用するため変更したくなかった。 → 2を選ぶ。
以下を実行することで解決。
Kaoris-MacBook-Pro:mobliz tokashiki$ nodebrew alias default v10.22.1 default -> v10.22.1 Kaoris-MacBook-Pro:mobliz tokashiki$ node -v v10.22.1
参考サイト
Macでnodeのバージョン切り替え -nodebrew の使い方 external_link nodebrewを使ってNode.jsの複数バージョンを簡単に使い分ける external_link