RubymineのdebuggerがRubygems 3.0以上で使えない問題


問題

  • Rubymineでdebuggerを使おうとしたところ、関連gemのインストールを求められる
  • インストールしようとしたところ、失敗する

エラーログ

Error running 'Api::V1::AccountsController... (1)'
Failed to Install Gems. Following gems were not installed:
/Applications/RubyMine.app/Contents/rb/gems/debase-0.3.0.beta8.gem:  While executing gem ... (OptionParser::InvalidOption)
invalid option: --no-rdoc
/Applications/RubyMine.app/Contents/rb/gems/ruby-debug-ide-0.8.0.beta8.gem:  While executing gem ... (OptionParser::InvalidOption)
invalid option: --no-rdoc

原因

  • Rubymineがdeprecateなオプション--no-rdocを渡している

対応

  • -​-no-documentを渡すようにする
  • だけど、関連gemのRubymine指定バージョンはホスティングされていないので、いつもどおり叩いてもダメ
$ gem install --no-document ruby-debug-ide -v 0.8.0.beta8
#=> ERROR:  Could not find a valid gem 'ruby-debug-ide' (= 0.8.0.beta8) in any repository
#=> ERROR:  Possible alternatives: ruby-debug-ide
  • エラーログを見ると、ローカルにgemの指定バージョンを持っているので、それをインストールする
  • gemのpathはエラーログからコピペする
$ gem install --no-document /Applications/RubyMine.app/Contents/rb/gems/ruby-debug-ide-0.8.0.beta8.gem
$ gem install --no-document /Applications/RubyMine.app/Contents/rb/gems/debase-0.3.0.beta8.gem
  • これでdebugger使えるようになる

参考