RubyMine: пусковая установка сервера Rails не найдена в проекте - программирование

RubyMine: пусковая установка сервера Rails не найдена в проекте

После импорта существующего проекта в RubyMine я столкнулся с тем, что "запуск Rails-сервера не был найден в проекте" при запуске/изменении конфигурации.

Я проверил это Не удалось запустить отладчик в Rubymine. Rails-сервер не был найден в проекте, но удаление каталога .idea и повторное открытие не помогло.

Я могу rails server в Терминале успешно, и сервер rails запускается. Поэтому я предполагаю, что это может быть связано с RubyMine.

Спасибо, Аллен

4b9b3361

Ответ 1

Я обновил RubyMine до IntelliJ Ultimate IDE 2017.1.5 и обнаружил ту же ошибку "Ошибка конфигурации запуска: программа запуска сервера Rails не найдена в проекте". Я использовал Ruby v2.4.0 с Rails 5.0.2.

На решение этой проблемы у меня ушел целый день, поэтому я написал подробное объяснение со скриншотами, чтобы помочь другим.

Это произошло, когда я попытался запустить или отладить мой сервер Rails из IntelliJ. Другие решения также не исправили ошибку. Я попытался удалить свою папку .idea/, попробовать разные версии Ruby или Rails (то есть Ruby v2.3.0 или последнюю версию Rails 5.1.2) и даже запустить новый проект с нуля. Но я мог нормально запустить сервер Rails, используя Terminal (вне IDE) с rails s.

РЕШЕНИЕ подход:

Сначала я открыл Выполнить> Редактировать конфигурации, но "Выбрать SDK из модуля" не было доступных модулей проекта для выбора из раскрывающегося списка, поэтому мне пришлось создать его следующим образом :

Я пошел в Файл> Структура проекта

enter image description here

Затем я щелкнул Modules, щелкнул значок "+" и выбрал "Import Module".

enter image description here

Затем я перешел в корневой каталог моего проекта Rails "'/Users/my_username/code/apps/_murmur/skag_server_rails" и щелкнул , откройте, и отобразилось следующее.

enter image description here

Затем я выбрал "Создать модуль из существующих источников" и нажал "Далее", и он показал следующее, с синим флажком, показанным рядом с корневым каталогом моего проекта Rails, который он нашел, поэтому я снова нажал "Далее" :

enter image description here

Затем он показал следующее окно, и я нажал "Готово".

enter image description here

Теперь я закончил импортировать проект Rails, над которым работал, как Module, и он показал следующее, поэтому я нажал "Ok", так как теперь я был готов попробовать и снова запустите мой сервер Rails:

enter image description here

Поэтому я вернулся к окну Run> Edit Configurations и щелкнул по"Rails> skag", где я теперь мог использовать "Выбрать SDK из модуля", так как был теперь мой модуль "skag_server_rails" доступен в только что созданном раскрывающемся списке, и никаких ошибок не было видно, как показано ниже:

enter image description here

Затем я смог щелкнуть Ok, чтобы сохранить конфигурацию запуска/редактирования

Затем я смог запустить сервер Выполнить> Выполнить, который отобразил:

enter image description here

После этого я смог успешно открыть приложение Rails в браузере open http://localhost:3000

Но потом, когда я попытался Выполнить> Отладка, чтобы я мог отладить с помощью точек останова, он дал мне следующие ошибки:

enter image description here

enter image description here

Я решил это, запустив следующее в Терминале (вне IDE):

gem install debase --pre
gem install ruby-debug-ide

Тогда, наконец, я смог запустить Run> Debug, и это позволило мне запускать точки останова, как показано ниже:

enter image description here

Важное примечание:

Первоначальный подход, который я использовал, НЕ заканчивал тем, что исправлял ошибку, связанную с выбором использования "Использовать другой SDK" в окне "Выполнить> Редактировать конфигурации" для загрузки моего Ruby Gemset в конфигурацию отладки (вместо использования модуля).

ОБНОВЛЕНИЕ: Я снова столкнулся с той же ошибкой совсем недавно, 2 сентября 2017 года, и выполнил следующие шаги для ее устранения:

  • Перейдите в Меню> Файл> Структура проекта> Настройки проекта> Модули> Нажмите "+" и выберите "Новый модуль"
  • Выберите "Ruby on Rails" из списка слева
  • Выберите для "Module SDK" ярлык "RVM: ruby-2.4.1 []"
  • Нажмите на ярлык "Версия Rails" для выпадающего списка "Install Rails Gem..."
    • Выберите версию Rails для загрузки и ожидания (т.е. 5.0.0)
    • Не выбирайте версию Rails, которая вызывает всплывающую подсказку "Эта версия не полностью поддерживается" (т.е. выбор версии Rails> 5.1.2 приводит к этому)
  • Щелкните "Версия Rails", чтобы обозначить версию, которая закончила загрузку, из раскрывающегося списка (т.е. 5.0.0)
  • .Введите значение метки "Рабочий каталог" в "../"
  • Введите "Имя модуля" (т.е. videotube-5.0.0)
  • Нажмите "Применить" и "Сохранить"

  • Перейдите в Меню> Выполнить> Редактировать конфигурации

    • Измените любые каталоги, которые не указывают на корневую папку приложения
  • Перейдите в Меню> Выполнить> Отладка

Ответ 2

Самый простой способ это исправить:

  1. Закрыть проект
  2. Удалить папку .idea из папки проекта
  3. Открытый проект

Бинго!

ПРИМЕЧАНИЕ: этот обходной путь больше не работает с 2017.2. Смотрите RUBY-20144

Ответ 3

Я столкнулся с этой же проблемой, и способ, которым я нашел решение, состоял в том, чтобы правильно определить корневую папку проекта при первом открытии с RubyMine.

Насколько я понимаю, в идеале вам следует открыть проект, указав RubyMine в корневую папку проекта:

my-workplace/
|-- rails-project-name/  <-- point RubyMine here when openning
|   |-- app/
|   |-- bin/
|   |-- config/
|   |-- db/
|   |-- lib/
|   |-- log/
|   |-- public/
|   |-- test/
|   ...

Ответ 4

Хорошо, у этого RubyMine есть некоторые серьезные проблемы. Мой день начался мирно, а затем закончился как кошмар, благодаря RubyMine. Все, что я сделал, это git checkout для определенной версии моего репо. Что ж, когда я это сделал, папки в RubyMine внезапно исчезли. Да, это первая ошибка. Я git checkout 8d4fbd1b5dfce0a3daa16896a603903a А потом открываю RubyMine и папки исчезают! Я закрыл и снова открыл. По-прежнему нет папок. Я перезагрузил компьютер, но папок по-прежнему нет.

Я должен был пойти в Проект> Структура файла и удалить Модуль. А затем создайте новый модуль. Теперь папки проекта появляются. Но затем я получаю эту неясную ошибку Rails server launcher wasn't found in the project. Я понятия не имею, что это значит. Я выхожу в сеть, и они говорят, удалить каталог .idea в вашем проекте. Я так и делаю. И теперь мне снова нужно удалить и воссоздать модуль.

На этот раз он говорит "перезаписать каталог", так как у меня есть существующий проект. Я выбираю "Да", а затем я открываю проект, и мой secrets.yml больше нет! Теперь я должен был использовать секреты. Я сделал резервную копию. И, наконец, это работает.

Серьезно, все это только потому, что я хотел получить конкретный git commit? Давай.

ОБНОВИТЬ После дальнейшего расследования я понимаю, что происходит. В отношении плагина Ruby есть три важных файла Intellij Idea:

/.idea/
MyProject.iml
/MyProjectGemset/

Эти три файла не должны быть включены в git и должны быть согласованы в разных ветках вашего проекта. У вас может быть другой *.iml в проекте. Удалите это и убедитесь, что вы используете один и тот же .iml во всех ветвях.

Эти два файла относятся к вашему SDK:

 MyProject.iml
/MyProjectGemset/

Этот файл относится к общей конфигурации:

/.idea/

Ответ 5

Я устал от этих решений, но это не сработало. Я использую решение, чтобы решить мою проблему: Удалите RubyMine, а затем установите, все работает!