Ruby
rubygems
RubyMine

RubyMineでRemote SDKを追加時にGemsが読み込めない現象の解決

More than 1 year has passed since last update.

OS X El Capitan (10.11.6)で動いているRubyMine 2017.3.2 (Build #RM-173.4301.17, built on January 11, 2018)でタイトルの現象が発生しました。※特にプラグインを追加していない状態です。


現象の詳細

Vagrant上のUbuntuにインストールしたRuby (rbenv)をRubyMineのRemote SDKとして登録したく、

https://qiita.com/zchee/items/77800caffadf6e3ddc3f を参考に設定をしてみましたが、次の通り、 "Nothing to show" となり、Gemsが読み込めませんでした。

image.png

Teratailでも(恐らく同じ状況で)困ってる方がいたのですが、現時点でコメントがなかったので調べてみました。


RubyMineでvagrant上でインストールしたgemを読み込めない

https://teratail.com/questions/106781



YouTrackにあった

JetBrainsのYouTrackに同様と思われる問題が提起されていました。

Vagrant doesn't detect gems -- rsync fails

https://youtrack.jetbrains.com/issue/RUBY-19761

これによると rsync が怪しいらしく、ログ (Help -> Show log in Finder で見れる) を確認すると、ドンピシャでした。

INFO - y.remote.RubySshRemoteTransfer - Updating gems' local copy 

INFO - ns.plugins.remotesdk.RSyncUtil - rsync version: rsync version 2.6.9 protocol version 29
INFO - ns.plugins.remotesdk.RSyncUtil - rsync version: rsync version 2.6.9 protocol version 29
INFO - ns.plugins.remotesdk.RSyncUtil - RSync exited with code: 12
.
.
.
INFO - y.remote.RubySshRemoteTransfer - Gems copied.

終了コード 12 で失敗しています。

コメントでは具体的な解決策も掲載されていていて、指示の通り、Registry (⌘+Shift+A でRegistryと検索すると開ける)から ide.remote.interpreter.use.rsync を無効にすれば解決しました。

image.png

ただRegistry値の変更はむやみにしてはいけないっぽいので、JetBrainsの今後の対応に期待です。