anyenvの導入でハマったのでメモ
anyenvの導入にハマってしまったので自分用にメモ.
anyenvとは
pyenvやrbenvなどの複数バージョンの管理を行えるツールを管理できるツールでコレがあることによって自分で設定ファイルに設定を追加せずに**envを利用刷ることができる.便利.
第一のハマりポイント - 既に .**env
が存在する
README通りに導入はできたが,どうにも**envが上手く動作しなかった.
ローカル,グローバルどちらに使いたいバージョンを設定してもうまく適用されなかった.
見つけたのがこちらの記事↓
どうも過去に**envを導入したことがあってhomeディレクトリ下に.**env
ディレクトリがあると上手く動作しないことが原因らしい.
第二のハマリポイント - 設定の記述するファイル
anyenvの導入には
export PATH="$HOME/.anyenv/bin:$PATH" eval "$(anyenv init -)"
を自分の設定ファイルに追加する必要がある.
自分は.zshenv
に上記設定を追加していて(なぜかは忘れた)上手く動作しなかった.
pyenvを使っていた時は上手く動作していたので中々気づくことができずにハマってしまった...
どうやら/etc/zprofile
内で /usr/libexec/path_helper -s
を実行してinitで追加されるパスを上書きしているのが悪いようだ.
.zshrc
にeval $(anyenv init -)
を追加することで解決した.設定ファイルの読み込み順の問題みたいなので/etc/zprofile
を読み込まなくするか,以降に読み込まれるファイルに設定を追加すると解決するみたい.
まとめ
2つの原因でハマっていてかなり困った.初期化処理が何をしているか理解すれハマらずにすんだと思うので,これからはその辺りも理解してやっていきたい💪