Отладка выполнения плагина maven в веб-проекте maven - PullRequest
33 голосов
/ 04 июня 2010

Есть ли способ на самом деле отладить плагин maven, пока он в действии. Я имею в виду, что, например, у нас есть maven-clean-plugin. Итак, когда этот плагин выполняет свое действие, можем ли мы как-то отлаживать и проверять внутри исходного кода maven-clean-plugin?

Очевидно, что нам нужно было бы связать исходный код Java для плагина в eclipse, но как мы можем установить его для отладки?

Спасибо.

РЕДАКТИРОВАТЬ : изменение объекта Извините, ребята, может быть, я должен был быть более точным. На самом деле у меня есть веб-приложение, которое представляет собой проект maven, использующий сторонние плагины maven. Теперь, когда я делаю чистую установку mvn , мне нужно отладить мой сторонний плагин maven. Теперь в моей зависимости от maven я не получаю зависимость от этого плагина jar, что вполне нормально. Есть идеи?

Ответы [ 5 ]

41 голосов
/ 04 июня 2010

Если вы используете Eclipse с плагином m2eclipse, просто запустите сборку с Debug As ... вместо Run as ... .

Если вы не используете m2eclipse, запустите mvnDebug вместо mvn (для Maven 2.0.8+) и подключите удаленный отладчик к порту 8000. Для Maven 2.0.8 <добавьте параметры удаленной отладки в стартовый скрипт. </p>

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

Смотри также

11 голосов
/ 04 июня 2010

Если вы хотите отлаживать выполнение Maven в Eclipse, вот как я это сделал, в основном с инструментами командной строки (плагин Eclipse не использовался) (может быть, в некоторых моментах он отключен, я не делал этого 6 месяцев) :

  • Запустите из командной строки mvndebug вместо команды mvn. Maven начнет запуск и дождется появления внешнего отладчика на порте TCP, прежде чем возобновить работу. Обратите внимание на номер порта.
  • Настройка в Eclipse пользовательской конфигурации удаленной отладки. (См. http://www.ibm.com/developerworks/library/os-ecbug/, Удаленная отладка) - установите номер порта, который используется mvndebug. Также поместите исходные файлы, которые вы будете использовать для отладки, в конфигурации Debug.
  • Запустить конфигурацию удаленной отладки. Maven должен возобновиться, и вы будете ловить ошибки в Eclipse.
7 голосов
/ 14 июля 2016

Просто замените mvn на mvnDebug в вашей команде:

mvnDebug clean install

В результате JVM прослушивает отладчик на порту 8000. Для более точного управления вы можете установить MAVEN_OPTS переменную среды со стандартными параметрами отладки JVM:

export MAVEN_OPTS="-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000"
mvn clean install
6 голосов
/ 04 июня 2010

Это может быть немного не так, так как я собираюсь поговорить о IntelliJ IDEA. С IDEA вы можете загрузить проект maven напрямую, а затем просто щелкнуть правой кнопкой мыши на одном из этапов жизненного цикла сборки (очистить, упаковать, установить и т. Д.) И выбрать отладку. Затем среда IDE запускает этот этап с правильным путем к классу и переводит вас в отладчик.

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

версия сообщества IDEA доступна бесплатно.

2 голосов
/ 30 октября 2013

В NetBeans 7.4 щелкните правой кнопкой мыши проект> Свойства> Действия. Выберите действие Build project (или любое другое), затем рядом с «Установить свойства» нажмите Add и Debug Maven Build.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...