Из чего реальной является утилита, делают и муравей?

В то время как я разрабатываю в C/C++ и Java, я просто делаю сценарий compile.bat, который делает все, это хорошо для меня. Почему должен я использовать сделать и почему я должен использовать муравья?

6
задан Gabriel 26 January 2010 в 16:07
поделиться

8 ответов

Предположим, у вас есть 1000 исходных файлов и измените только один из них. С твоему сценарию .bat Вам придется перекомпилировать партию, с которым вы можете перекомпилировать только тот, который изменился. Это может спасти совсем немного (читать часы в большом проекте) времени.

Даже лучше, если вы измените один из файлов заголовка, сделайте повторно компилируйте только исходные файлы, которые используют этот заголовок.

Это две основные функции, которые имели в виду, и его потомство используется для всех серьезных разработок программного обеспечения с компилируемыми языками.

22
ответ дан 8 December 2019 в 03:00
поделиться

Может быть несколько причин: - потому что вы не единственный в проекте - потому что кому-то придется заботиться о сценарии сборки, когда вы ушли - Потому что сценарий Compile.bat не зависит от платформы - Поскольку политика проекта определяет технологию сборки, например Для всего предприятия

я недавно прочитал смешную статью статью о инструментах сборки . Для вас только первая часть может быть какого-либо интереса (до того, как запускается на стартование Maven)

2
ответ дан 8 December 2019 в 03:00
поделиться

До тех пор, пока вы разрабатываете для себя под Windows: устраивайте себя сами.

Но если вы начинаете разрабатывать вместе с другими, Ant и Make являются стандартом для описания того, как строится ваше приложение.

2
ответ дан 8 December 2019 в 03:00
поделиться

Для одной вещи, Make и Ant оба отслеживают какие файлы уже скомпилированы, поэтому он не работает, если она не требуется.

1
ответ дан 8 December 2019 в 03:00
поделиться

Вы получаете некоторую платформу - нейтралитет (как я могу запустить ваш пакетный скрипт на My Linux-Box). Но более важно: сборки-инструменты имеют поддержку для зависимости - разрешение. Скрипты не хватает этого и должны построить его самостоятельно.

Скажем, у вас есть цели A, B и C. B и C Оба зависят от A. В скрипте они вызывают подпрограмму A. Если вы теперь создаете новую цель D, что зависит от B и C, чем вы выполните Дважды. Создание-инструменты распознают это и выполните только один раз.

Поскольку эта ситуация типична для задачи, связанной с компиляцией, построение распределения, тестирования, создания документации по созданию и т. Д. Создание-инструменты полезны для разработки программного обеспечения.

0
ответ дан 8 December 2019 в 03:00
поделиться

Было бы возможно использовать файл .bat - или bash или другой аромат сценария оболочки - делать все, что может сделать, я могу сделать. Но гораздо легче делать много вещей в муравьеве ...

  • Создание / перемещение / удаление файлов и каталогов
  • Применить фильтрующие токены
  • Проверки блока RUN
  • Пакет JAR, ZIP или войны правильно

Многие проекты должны делать эти вещи, в дополнение к составлению, когда они строят.

Также муравей является независимой от платформы, поэтому вы можете сотрудничать с теми, кто использует другие операционные системы.

Но зачем останавливаться на муравьеде? Apache Maven предлагает еще более убедительные функции.

0
ответ дан 8 December 2019 в 03:00
поделиться

С помощью файла сборки можно автоматизировать не только компиляцию кода, но и запуск юнит-тестов, сборку метрик, сборку артефактов для развертывания и многое другое.

Преимуществом Ant является то, что он вдохновил на создание инструментов для других платформ - NAnt для .NET, Phing для PHP. Они делают те же самые вещи и работают одинаково.

4
ответ дан 8 December 2019 в 03:00
поделиться

Make и Ant действительно проявляют себя при использовании с автоматизированными системами сборки или непрерывной интеграцией.

Требования к производственным сборкам, тестовым сборкам и сборкам разработки часто различны, и в команде из нескольких человек разные разработчики настраивают свои среды разработки по-разному.

Наличие окончательного процесса сборки решает проблемы «Работает на моей машине» (WOMM), которые возникают всякий раз, когда приложение должно быть построено на другой машине, чем та, на которой оно было разработано. Это высший арбитр, когда один разработчик проверяет код, который не работает на машине другого разработчика. Если в процессе сборки не получается работающее программное обеспечение, значит, проверка первого разработчика была прервана.Если он действительно производит работающее программное обеспечение, среда разработки второго разработчика не работает, если не доказано обратное.

0
ответ дан 8 December 2019 в 03:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: