Homebrew をアップデートしたら ndenv の node が使えなくなった

投稿日:2017年06月24日

Tags: bash shell メモ JavaScript

久々に Homebrewをアップデートしたら ndenv の node が使えなくなったのでメモ。

ndenv が使えなくなったというよりは Homebrew でインストールした node が優先されるようになりました。

※brew からインストールした yarn の依存関係を解消するのに brew で node をインストールしたら $PATH が変わったのか、読み込み元が変わったのかも。

Homebrew のアップデート

下記の流れでHomebrewをアップデートします。

# パッケージ(formula)リストの更新
$ brew update

# 更新があるパッケージ(formula)を再ビルド
$ brew upgrade

# インストール時にダウンロードしたzipファイルを消去
$ brew cleanup

# Homebrewに問題がないかチェック
$ brew doctor
1
2
3
4
5
6
7
8
9
10
11

ndenv

プロジェクトで使用する node の version を確認。

$ ndenv versions
  system
  6.9.1
  v4.4.5
* v6.10.2 (set by /Users/username/dirName/.node-version)
  v6.9.5
1
2
3
4
5
6

node

改めて node のバージョンを確認。

$ node -v
v8.1.0
1
2

おかしい、なんで v6.10.2 にならないんだ。

which で node コマンドを探します。

$ which node
/usr/local/bin/node
1
2

ndenv の node が使われていない…。

ndenv (anyenv) のを使って欲しいのに…。

下記で brew で インストールされている内容を確認します。

$ brew ls
or 
$ brew list
1
2
3

node が確認できたので、 brew の方の node をアンインストールします。

homebrew で入れた node をアンインストールする

$ brew uninstall --ignore-dependencies node
1

node が使えるか確認

$ node -v
-bash: /usr/local/bin/node: No such file or directory
1
2

$PATHが通っていないっぽいです。

下記コマンドでシェルを再起動して $PATH を ndenv の方に通します。

$ exec $SHELL -l
1

再び、コマンドで node のバージョンを確認します。

$ node -v
v6.10.2
1
2

無事に node が期待通りのバージョンになりました。

参考

Last Updated: 1/29/2021, 12:59:28 PM