[Ruby] rbenv global 2.3.0 でバージョンが切り替わらない
調査と対応。凡ミスの記録。
Contents
状況確認
公式をよく読む。
path
echo $path
で ~/.rbenv/shims
が先に存在する。
% echo $path
/Users/****/.rbenv/shims /Users/****/local/bin /usr/local/bin /usr/local/sbin /usr/sbin /sbin /usr/bin /bin /Users/****/.composer/vendor/bin /Users/****/local/lib/node_modules/bin
~/.rbenv/version
rbenv global
コマンドの実行結果が ~/.rbenv/version
ファイルに書き込まれている。
% more ~/.rbenv/version
2.3.0
~/.rbenv/versions
~/.rbenv/versions
以下に必要な ruby version がインストールされている。
% ls ~/.rbenv/versions
1.9.3-p551/ 2.2.4/ 2.3.0/
Homebrew
Homebrew で rbenv と ruby-build がインストールされている。
% brew list |grep "rbenv\|ruby-build"
rbenv
rbenv-default-gems
ruby-build
プロファイルに eval "$(rbenv init -)"
が追加されている。
eval "$(rbenv init -)"
原因と対応
正常にインストールされているが ~/.rbenv/version
を見ていないことが分かった。
rbenv versions
で確認。んっ!?
% rbenv versions
system
1.9.3-p551
* 2.2.4 (set by /Users/****/.ruby-version)
2.3.0
ルートディレクトリ直下に .ruby-version
が何故かある。。。
% more .ruby-version
2.2.4
% rm .ruby-version
remove .ruby-version? y
再確認。
% rbenv global 2.3.0
% rbenv versions
system
1.9.3-p551
2.2.4
* 2.3.0 (set by /Users/****/.rbenv/version)
教訓: コマンドの出力結果は、きちんと確認しよう。