Короткий ответ заключается в том, что Ant — это отличный способ создать полную сборку проекта, независимую от какого-либо конкретного инструмента, который может использовать любой разработчик. Без независимой сборки все может быстро пойти наперекосяк, особенно для больших проектных групп.
А теперь к длинному ответу... Меня завели в несколько проектов без всякого смысла самостоятельной сборки. В одном проекте был один парень, который не был разработчиком, которому было поручено создавать и развертывать программное обеспечение. Он создал 147 отдельных пакетных файлов Windows для компиляции каждого компонента EJB, каждого сервлета и каждого клиентского компонента. Для этой сборки не было проверки ошибок. Все сообщения журнала, включая сообщения об ошибках, были выведены на стандартный вывод. Он должен был вручную распознать, прочитав этот журнал, какое исключение или напечатанное сообщение было нормальным, а какое сообщение было ошибкой. Ему также пришлось развернуть это программное обеспечение, которое он только что создал. Развертывание было таким же сложным, поскольку было несколько уровней с балансировкой нагрузки. Каждый модуль нужно было разместить в нужном месте вручную с настройкой параметров, чтобы они соответствовали нисходящему и восходящему уровням. Создание и развертывание этого программного обеспечения заняло у него не менее 3 дней с использованием этого метода. Конечно, только тогда кто-нибудь мог определить, «работала» ли сборка. Обычно по истечении этого периода все программисты брались за отладку сборки. Программисты сказали бы, что мой модуль отлично работает в моей среде IDE. Я просто нажимаю бежать вот так, понимаете?
Действительно, отдельные программные модули обычно работали, но сборка и развертывание были ужасно неэффективны. И что не менее плохо, развернуть сборку более чем в одной среде было столь же сложно для всех. Менеджмент сказал бы: хорошо, теперь эта сборка работает в нашей среде регрессионного тестирования. Теперь разверните ту же сборку в другой среде, чтобы продавцы могли продемонстрировать готовое программное обеспечение. Это должно быть просто сделать, но это также заняло не менее 2 дней, после чего последовал период «отладки сборки». Сборки и развертывания никогда не были простыми и никогда не были точными. Это сильно замедлило проект.
В любом случае, мы заменили всю эту процедуру полным механизмом сборки и развертывания на основе Ant. Конечным результатом стало то, что полную сборку можно было создать и развернуть менее чем за 30 минут в полностью автоматическом режиме. QA-парень, управляющий сборками и развертываниями, может вести доску с информацией о том, в какой среде какая сборка развернута и какая группа использует эту среду. Это было то, что было просто невозможно со старой системой.
person
Gary
schedule
04.03.2009