Отладка Ant-задач не так проста, как простая отладка Java.
Хотя вы можете отлаживать Ant-файл, добавляя точки останова, копая внутри
код конкретной пользовательской задачи потребует добавления удаленного отладчика
чтобы можно было «поймать» запущенный процесс.
Я объясню, как это сделать в Eclipse, хотя я могу понять, что это может быть
достигается со всеми основными IDE Java. Первое, что нужно создать новый запуск
Конфигурация для файла муравья, где вы планируете использовать ваши индивидуальные
новое задание. Для этого перейдите по адресу:
Выполнить -> Внешние инструменты -> Настройка внешних инструментов ...
Щелкните правой кнопкой мыши в Ant Build -> New и на вкладке Main выберите свой муравей
скрипт в поле Buildfile. Затем перейдите на вкладку JRE и вставьте следующее
Аргументы JVM:
-Xrunjdwp: транспорт = транспорт по сокетам, адрес = 8000, сервер = у, подвесьте = п
Если вам интересно, что означают эти аргументы, проверьте это, хотя немного
обновленный (Java 1.5) все еще работает.
Как только это будет сделано, вы должны создать новую конфигурацию Debug для
удаленное Java-приложение. Для этого перейдите к:
Выполнить-> Отладка конфигурации
Раскройте список в левом столбце и щелкните правой кнопкой мыши в Remote Java.
Приложение -> Новое. Выберите название проекта в поле Project.
Значения по умолчанию для хоста и порта в порядке, если вы использовали тот же
для конфигурации Ant (аргументы JVM).
Все готово к тестовому запуску! Добавьте точки останова везде, где вы
считаю необходимым. В моем случае я добавил один из них в сценарий муравья
который использует пользовательскую задачу муравья, а также в пользовательской задаче муравья, в
метод execute.
Щелкните правой кнопкой мыши в вашем скрипте или задаче ant -> Debug As ...-> Ant> Build
первый
Теперь ДО вызова вашего пользовательского кода задачи муравья, перейдите в Run-> Debug
Конфигурации и отладка ранее созданного Java Remote
Конфигурация приложения. Это запустит отдельный поток, который будет отлаживать
ваш специальный код задачи муравья, при условии, что вы включили несколько точек останова
:) Вы можете увидеть на следующем изображении, как в моем случае поток остановился
в методе выполнения моей пользовательской задачи муравья.
После этого вам решать, что делать дальше ...