Подтвердить что ты не робот

Отладка выполнения плагина maven в веб-проекте maven

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

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

Спасибо.

EDIT: изменение темы Мне жаль, ребята, может быть, я должен был быть более точным. На самом деле у меня есть мое веб-приложение, которое является проектом maven, который использует сторонние плагины maven. Теперь, когда я делаю mvn clean install, мне нужно отладить мой третий плагин maven. Теперь в моей зависимости от maven я не получаю зависимости от этой плагины, что вполне нормально. Любые идеи?

4b9b3361

Ответ 1

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

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

Конечно, вам нужно импортировать источники плагина в рабочее пространство.

См. также

Ответ 2

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

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

Ответ 3

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

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

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

Ответ 4

Просто замените 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

Ответ 5

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