Как решить проблему RubyMine в Ruby-debug-ide "не установлена"

Я получаю сообщение об ошибке:

Cannot start debugger. Gem 'ruby-debug-ide' isn't installed or its executable script 'rdebug-ide' doesn't exist.

но все драгоценные камни были успешно установлены:

gem 'ruby-debug-ide'
gem 'debase'

Я могу запустить 'rdebug-ide' вручную:

$ rdebug-ide
Using ruby-debug-base 0.2.1
Usage: rdebug-ide is supposed to be called from RDT, NetBeans, RubyMine, or
       the IntelliJ IDEA Ruby plugin.  The command line interface to
       ruby-debug is rdebug.

Но когда я начинаю отладку, RubyMine просит установить жемчужину ruby-debug-ide. Почему?

И, после установки, я получаю:

Cannot start debugger. Gem 'ruby-debug-ide' isn't installed or its executable script 'rdebug-ide' doesn't exist.

Я запускаю Mac OS X 10.11.3.

Ответ 1

Я начал получать это после обновления с 2017.x до 2018.1. В моем случае кажется, что RubyMine требовалась более новая версия, но его сообщение об ошибке означало, что он не мог найти какую-либо версию и не смог ее установить. Я думаю, что он пытался установить его с другим SDK.

Вручную установив последнюю --pre ruby-debugger-ide (в моем случае был необходим флаг --pre), а затем перезапустив RubyMine, все получилось.

Ответ 2

Вот фактическая команда, которая работала для меня:

gem install ruby-debug-ide --pre

Ответ 3

В дополнение к Ашану Эллахи

В вашем терминале вы, вероятно, не используете ту же рубиновую версию, что и внутри Ruby Mine. Вы можете проверить это

В рубиновой шахте

Preferences --> Laguanges and Frameworks --> Ruby SDK and Gems

В терминале

$ ruby-v

Если вы не используете ту же версию, попробуйте установить RubyMine для использования той же версии Ruby, что и в вашем терминале. Это должно решить проблему. Затем, если вы действительно хотите использовать другую RubyVersion, вам нужно будет перейти на ваш терминал, изменить версию Ruby и вручную установить оба драгоценных камня

Ответ 4

Я столкнулся с этой проблемой при отладке в среде docker-compose. Я подозреваю, что RubyMine не обновляет список доступных драгоценных камней после добавления SDK.

Итак, если вы добавите SDK, то добавьте ruby-debug-ide в Gemfile, вы получите сообщение об ошибке.

Вместо этого (re) создайте SDK после добавления ruby-debug-ide.

Ответ 5

Вы должны изучить настройки RubyMine, которые ruby version и который gemset (глобальный/по умолчанию) он использует. Проверьте, где эти необходимые драгоценные камни установлены, и убедитесь, что RubyMine использует этот gemset, где они установлены успешно.

Ответ 6

Я исправил это после просмотра ответов здесь: https://intellij-support.jetbrains.com/hc/en-us/community/posts/206072049-Cannot-start-debugger

Решение внизу предложило "удалить все мои драгоценные камни". удаление рубин. очистка каталогов и rvm. удаляя рубиновый рудник, а затем переустанавливая все

Я начал с самого легкого из них, который состоял в том, чтобы переустановить рубин. Это решило это для меня.

Ответ 7

Я столкнулся с этой проблемой также с Rubymine 8, rvm 1.29.1 и Ruby версии 2.3.3. Обновление версии Rubimine от Rubymine 8 до Rubymine 2016.3 или последняя решает проблему для меня.

Ответ 8

Проверьте версию ruby ​​ версии SDK. Вы можете сначала использовать установщик rails для установки всего.

Затем с помощью gem установите rdebug для ruby ​​2+.

Убедитесь, что версия Rubimine Ruby совпадает с той версией, которую вы установили. С помощью всех этих функций вы сможете отлаживать Ruby.

Ответ 9

Мое решение состояло в том, чтобы перейти к настройкам Rubymine, доступным SDK, удалить SDK, перезапустить Rubymine и снова добавить SDK.

Ответ 10

Пожалуйста, проверьте версию x286 против 64, как для Ruby, так и для версии Rmine. У меня была эта проблема runnin x86 rubyMine на 64 ruby

Ответ 11

Комбинация соответствия версии host ide ruby с удаленной версией SDK работала для меня, но требовала нескольких дополнительных шагов. Я тоже использую Mac OS в качестве хоста (работает mohave)

  1. настройка удаленной среды в настройках → ruby sdk и gems должна иметь ту же версию, что и удаленная цель, включая все установленные gems.

ПРИМЕЧАНИЕ: мне пришлось переустановить гем компоновщика как на хосте, так и на удаленном хосте, чтобы заставить менеджер гемов установить вещи автоматически.

  1. среда проекта должна быть изменена, чтобы использовать ту же версию, что и удаленный хост. это в File → настройки для новых проектов → ruby sdk и gems.

ПРИМЕЧАНИЕ. Мне также пришлось установить RVM по умолчанию на моем локальном хосте и удаленном хосте и сбросить предыдущую версию по умолчанию в настройках локального хоста.

Как только я это сделал, я смог синхронизировать гемы и подключить удаленный отладчик.

Ответ 12

Поскольку вы используете Mac OSX, я не могу дать вам такой же точный ответ, но вы можете найти аналогичный способ достижения этого. Я использую Ubuntu с Vagrant, поэтому вам, возможно, придется немного его адаптировать.

  1. Скопируйте следующий гем из папки приложения RubyMine/rb/gems, пожалуйста, скопируйте гем, связанный с вашей средой исполнения ruby и платформой, для разных сред исполнения ruby и платформ существуют разные гемы, в моем случае это:
    • опошлить-0.3.0.beta7.gem
    • рубиново-отладки-ида-0.8.0.beta6.gem
  2. Установите их внутри вашего хоста приложения, в моем случае это бродяга, в вашем случае это может быть внутри вашего контейнера или в вашей хост-ОС с помощью следующей команды:
gem install --force --local *.gem
  1. Установите точку останова и начните отладку.

Он может попросить вас еще раз установить гем, но тогда отладка будет работать наверняка.