IntelliJ IDEAでRubyプロジェクトを作るときに、anyenv経由で入れたrbenvを認識してくれなかったので解決方法をメモ。
環境
- macOS mojave 10.14.6
- IntelliJ IDEA 2019.3.1 (Ultimate Edition)
- anyenv 1.1.1
- rbenv 1.1.2-17-g7795476
やりたかったこと
タイトルまんまです。
単体で入れてたrbenvを削除してanyenv経由でインストールし直したところ、
IntelliJで新しくプロジェクトを作る際にProjectSDKとしてrbenv配下のRubyたちがリストされなくなりました。
手動でpathを指定してやればそれで済む話ではありますが、rbenv installするたびに手動でIntelliJに追加するのはめんどくさいので対処法を探しました。
解決方法
いきなり結論で恐縮ですが
ln -s ~/.anyenv/envs/rbenv ~/.rbenv
これで解決します。シンボリックリンクを貼ってるだけです。
公式のヘルプによるとrbenvは正式にサポートしているけれどanyenvについてはまったく言及されていないので、おそらくanyenv経由のインストールはサポート外なんだろうと思います。
If you have one of these version managers installed on your local machine, IntelliJ IDEA automatically detects it and lets you switch between available Ruby interpreters
とあるのですが、おそらくこれは単純にrbenvのデフォルトのインストール先(~/.rbenv)が存在するかどうかを探しているのかなと推測します
なので試しにシンボリックリンクでanyenv配下のrbenvを参照させたところ意図した通りの動きをしてくれた、というだけの話でした。
試してないですがanyenvで入れた他のXXenvで似たような問題が起きたら同じ対処でいけるかもしれませんね。
普通にanyenvに対応してくれるのが一番早いのですが。。
ここまで書いて気がついたのですが、こちらの記事で言及されてました。
InteliJ 2017.3のドキュメントでは上記の仕様がはっきり明記されていたみたいですね。
それ消さないで欲しかった。