Построение войны с помощью Gradle, отладка с IntelliJ IDEA - программирование

Построение войны с помощью Gradle, отладка с IntelliJ IDEA

У меня есть проект Javaapp webapp (называемый ProjectA), разработанный в IntelliJ IDEA. У него есть файл build.gradle, который применяет военный плагин:

apply plugin: 'war'

Я хочу отлаживать (или запускать) gradle сгенерированный файл войны вместо отладки автоматически созданного intellij артефакта. Для меня очень важно, что я могу обновлять классы, измененные во время отладки, без необходимости перезапуска сервера.

enter image description here

Как я могу это сделать?

Обратите внимание, что:

1) При нажатии кнопки обновления на вкладке плагина gradle (refresh all Gradle peojects) Intellij обновляет все конфигурации проекта (например, зависимости модулей) и генерирует артефакты. Я назвал его автоматически созданным intellij артефактом. enter image description here

Чтобы запустить его, я должен только создать новую локальную конфигурацию Tomcat Server и добавить вкладку артефакт в развертывание. enter image description here

enter image description here

2) Кроме того, есть несколько задач gradle (clean, build, war и т.д.). Я могу выполнить задачу сборки или военную задачу для создания военного файла. Я назвал его gradle сгенерированным файлом войны.

4b9b3361

Ответ 1

Вместо развертывания артефакта сборки IntelliJ вы можете развернуть "внешний источник", нажав кнопку "+" в последнем скриншоте. Затем вы можете перейти к артефакту, созданному с помощью Gradle (в данном случае, файла .war в файле build/libs).

Во-вторых, вы можете поручить IntelliJ запустить задачу Gradle перед запуском конфигурации. Опять же, в последнем скриншоте я бы удалил второй шаг с надписью "Build" Gradle... "artifact" и добавил шаг для запуска задачи Gradle war.