LoginSignup
50
37

More than 3 years have passed since last update.

【Node.js】Nodebrewでnode.jsバージョンを切り替えできなかった時の備忘録

Last updated at Posted at 2018-02-09

結論

1,2のどっちが影響したのか素人にはわからないのでご参考までに。

1. usr/local/bin/nodeで発見し削除。

$ which node
usr/local/bin/node

以下の方法で、Finderで表示させて直接ゴミ箱へ。

Macの隠しファイルや隠しフォルダを表示する裏技 / Inforati

2.「.bash_profile」にパスを追記。

エディタ(sublime text)で開いて直接パスを書き込んだ。

.bash_profile
export PATH=$HOME/.nodebrew/current/bin:$PATH

 保存してターミナルで読み直す(?)ために以下を実行

$ source ~/.bash_profile

経緯&詳細

Nodebrewとnodeのバージョン合わない

Nodebrewを導入していざバージョンを切り替えても、なぜか変更が反映されなかった。

$ nodebrew install-binary v6.9.1
$ nodebrew ls
v6.9.1

current: none
$ nodebrew use v6.9.1
use v6.9.1

とここまでは、順調にnodebrew導入ができていた。しかし、

node -v
v8.9.1

なぜかバージョンを確認すると合致せず。

pkgのnodeのアンイストールもできず

元々公式サイトからpkgで導入していたことに思い当たる。nodeのアンイストールを試みる。

MacにpkgでインストールしたNode.jsをアンインストールする手順

lsbom -f -l -s -pf /var/db/receipts/org.nodejs.node.pkg.bom \
| while read i; do
  sudo rm /usr/local/${i}
done
sudo rm -rf /usr/local/lib/node \
     /usr/local/lib/node_modules \
     /var/db/receipts/org.nodejs.*

以上を実行しようとするも、doneをコピーした時点で

can't open /var/db/receipts/org.nodejs.pkg.bom: No such file or directory

と表示される。実際にそのディレクトリを開いてみるものの、確かにない。Homebrewで入れてないのも確認。

whichで場所を確認しようとするも、

which node
Users/[user-name]/.nodebrew/current/bin/node

とNodebrewで入れたものが反応しお手上げ状態。

Nodebrew自体をアンイストールして発見

Nodebrewが邪魔をしてるかもと、Finder上でフォルダを消してアンイストール。

Nodebrew本体を削除する方法

ここでようやく発見。

$ which node
usr/local/bin/node

usrはユーザーではなくパソコン本体、Macintosh HDの直下のフォルダ。
Finder上で直接削除。

パスが消えてた(?)ので書き足す

ここでNodebrewを再インストール。

バージョン確認しようとするとコマンドが見つからず、困惑。

$ nodebrew ls
nodebrew: command not found

ここでパスの存在を思い出し、.bash_profileを確認。以下を追記し保存、読み直す。

.bash_profile
export PATH=$HOME/.nodebrew/current/bin:$PATH
$ source ~/.bash_profile

ここまでして無事一致!

50
37
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
50
37