高木のブログ

nvmでdefaultを指定してもsystemのnodeが使われてしまう問題

2020/07/20

問題

nvm alias default v12.6.0

上記コマンドでdefaultを指定するとでdefaultの設定自体は反映されるが、実際にはsystemにインストールしたnodeが使われてしまう。
ターミナル再起動しても反映されず、.bashrcや.bash_profileにもおかしな記述は見当たらなかった。

$ nvm ls
        v0.10.0
       v0.10.28
        v0.11.0
       v0.11.16
        v0.12.0
        v0.12.2
         v6.2.0
         v6.4.0
         v6.9.2
        v8.16.1
        v12.6.0
        v13.6.0
->       system
default -> v12.6.0
node -> stable (-> v13.6.0) (default)
stable -> 13.6 (-> v13.6.0) (default)
unstable -> 6.9 (-> v6.9.2) (default)
iojs -> iojs- (-> N/A) (default)

原因

brewでyarnを入れた時にnodeも一緒に入ってしまい、それがnvmでインストールしたnodeよりも優先されてしまうから

解決方法

brewで入ったnodeを消す!

brew uninstall --force node

参考

nvmでdefaultバージョンを設定してもsystemのnodeが使用されてしまう - Qiita


Pixela