tomatoaiu の Tech Blog

プログラミングやツールについてのまとめブログ

anyenvとnodenv上でnpm install --global しても PATHが通っていない場合の対処法

モチベーション

npm i -g @vue/cli

をやった時にconfig.fishをいじってもパスを通すことがなかなかできなかった。解決したい。

課題

以下のように書いてもパスが通らなかった。

▼config.fish

set -x NODENV_ROOT $HOME/.anyenv/envs/nodenv
set -x PATH $PATH $NODENV_ROOT/versions/12.4.0/lib/node_modules/@vue/cli/bin

解決方法

以下の一文を入れたら治った。

▼conig.fish

eval (anyenv init - | source)

最終的には以下のように落ち着いた。

▼config.fish

# anyenv
set -x PATH $HOME/.anyenv/bin $PATH
eval (anyenv init - | source)

# nodenv
set -x NODENV_ROOT $HOME/.anyenv/envs/nodenv
set -x PATH $HOME/.anyenv/envs/nodenv/bin $PATH
set -gx PATH $NODENV_ROOT/shims $PATH

上記を記入した後に、以下のコマンドでshellを再起動。

exec $SHELL -l

結果

❯❯❯ vue --version
fish: Unknown command vue

上のようにパスが通っていなかったが、下のようにちゃんと出るようになった!

❯❯❯ vue --version
3.11.0

参考文献