Я читал this блог от Kent R.Spillner относительно инструментов для сборки java. Хотя я легко использовал Анта и Мейвена, я не поклялся никому серьезно, что я намереваюсь сделать. Есть ли сообщение в блоге, которое я связал с выраженным? Самое главное, следует ли использовать Maven или Ant для проекта среднего размера (приблизительно 20K LOC).Java Build Tools: Ant vs. Maven
ответ
На самом деле это зависит. Maven и Ant просто разные подходы: императивные и декларативные (см Imperative vs Declarative build systems)
Maven лучше для управления зависимостями (но Ant нормально с ними тоже, если вы используете Ant + Ivy) и строить артефакты. Основное преимущество maven - его жизненный цикл. Вы можете просто добавить определенные действия на правильной фазе, что кажется довольно логичным: просто запустите свои интеграционные тесты на этапе интеграции-тестирования. Кроме того, существует много существующих плагинов, которые могут быть почти все. Арбитр Maven - это мощная функция, которая позволяет быстро создавать проект.
Ant лучше контролировать процесс сборки. Перед вашей первой сборкой вам нужно написать build.xml. Если ваш процесс сборки очень специфичен, вам нужно создать сложные сценарии. Для долгосрочных проектов поддержка ant-скриптов может стать очень болезненной: скрипты становятся слишком сложными, люди, которые их пишут, могут покидать проект и т. Д.
Оба из них используют xml, который может стать слишком большим в большом длинном -термические проекты.
В любом случае, вы хотите прочитать определенную документацию (не ненавистные статьи) на обоих. Кроме того, есть ant-maven-plugin, которые позволяют запускать ant-скрипты с maven.
P.S. Вы можете посмотреть на Gradle, который для меня может обеспечить больше свободы, чем Maven, но проще в использовании, чем Ant.
- 1. Jenkins - Ant Build Maven Deploy
- 2. Java ant build jsonix
- 3. include maven-ant build libs в проекте eclipse java
- 4. инструмент построения (Gradle vs Ant vs Maven) для java EE
- 5. удаленный jenkins build vs local maven build
- 6. Ant Build Issue: NoClassDefFoundError
- 7. Java-проект Ant build error
- 8. android ant -pre-compile vs -pre-build
- 9. Проблема с KeyboardFocusManager, Maven vs IDE build
- 10. Imperative vs Declarative build systems
- 11. Как настроить maven build
- 12. Hibernate Ant Tools
- 13. Лучший способ настройки Solr (Ant vs Maven)?
- 14. java.lang.NoClassDefFoundError ANT build
- 15. Yosemite + Cordova, Ant build error
- 16. set Ant build path
- 17. Build Tools не найден
- 18. Android Ant Build
- 19. ant build file примитивы
- 20. Строка командной строки Maven vs Hudson build
- 21. Ant Build Signing Jar
- 22. Ant build NSIS fail
- 23. Batch Build open-source tools for VS 2008
- 24. Openbravo ant build failed
- 25. java ant build несколько выпусков программного обеспечения
- 26. call ant build через java-код
- 27. Ant Build Script Java Config Веб-проект
- 28. Bash shell build java application with ant
- 29. Ant to Maven Migration
- 30. ant fresh_install error/build failed
Эта статья очень старая. Используйте maven или gradle. – MariuszS
«Лучший инструмент построения - это тот, который вы сами пишете ...», не слушайте, чтобы советовать так. Сборка достаточно сложная, и каждый разработчик не изобретает собственный способ создания своего кода. В этой связи именно поэтому Maven/Gradle могут победить ANT, они поощряют стандартизацию сборки. Попытайтесь поддержать более 4-5 проектов, и вы поймете, что это важно. –
Очень жаль, что статья так высоко ценится в google для запроса «Ant vs Maven». ИМХО, все это отражается на гиперболе, которая может возникнуть только из-за изолированной работы, когда можно свободно изобретать колесо столько, сколько им нравится, не оправдывая добавленную сложность для своей команды. Термин «оптимизированный для философии» подскакивает при чтении. – DeaconDesperado