Отладка приложения Grails 3.x

Я пытаюсь отладить приложение Grails 3.x с помощью grails run-app --debug-fork. Но когда приложение запускается, он не дожидается присоединения отладчика. Любое решение о том, как отлаживать приложение Grails 3.x?

Ответ 1

Используйте флаг --debug-jvm. Например: grails --debug-jvm run-app

Ответ 2

В IntelliJ вы можете щелкнуть правой кнопкой мыши задачу Gradle bootRun и выбрать Debug.

Ответ 3

Другой вариант - запустить Application класс, расположенный в grails-app/init. Он имеет static void main и запускается как обычное приложение. Вы можете запустить его прямо из среды IDE с помощью профиля отладки.

Ответ 4

В IntelliJ IDEA 2016.1 я создаю две конфигурации. Это позволяет мне полностью использовать все контекстные меню и т.д., Которые предлагает IntelliJ IDEA. Вот как:

  • Первая конфигурация - это "Run". Изменить значение по умолчанию конфигурации и в поле "Командная строка" введите run-app --debug-jvm
  • Вторая конфигурация - это конфигурация "Remote". В диалоговом окне "Выполнить/Отладка" щелкните символ + и выберите "Remote" из список. Назовите его "Отладка" и сохраните.
  • Выберите конфигурацию "Запустить" в раскрывающемся списке "Конфигурация" вверху, а затем нажмите зеленую стрелку, чтобы запустить приложение. Мониторинг консоли пока вы не увидите сообщение Listening for transport dt_socket at address: 5005.
  • Выберите профиль удаленной отладки, созданный на шаге 2, и нажмите кнопку отладки. Через несколько минут консольный выход скажет: Grails application running at http://localhost:8080 in environment: development.

Успех!