Помощь в оценке инструментов сборки - PullRequest
6 голосов
/ 13 мая 2011

Я уже знаком с Ant & Maven и использую его, на данный момент я хотел бы перейти к другому инструменту, и я выбираю между "Buildr" и "Gradle". Я был бы признателен за понимание / обратную связь от тех, кто использовал один или оба из этих инструментов, потому что, честно говоря, на данный момент единственное реальное различие для меня, кажется, это ruby ​​vs groovy (и я чувствую себя комфортно и наслаждаюсь обоими). Буду также признателен за ответы на следующие вопросы:

  1. Я понимаю, что Buildr позволяет загружать и извлекать зависимости, которых нет в репозитории типа maven, предлагает ли Gradle такую ​​же функцию?
  2. Можно ли использовать Buildr / Gradle для создания исходного кода на другом языке - то есть groovy, ruby, actionscript / flex, c family и т. Д .?
  3. Насколько хорошо интегрированы Buildr / Gradle с Хадсоном или Дженкинсом?

Ответы [ 2 ]

6 голосов
/ 15 мая 2011

Я пришел со стороны грейдера, так что вот некоторые моменты, на которые стоит обратить внимание ...

  1. Градл построен на основе Ant + Ivy.Он может работать как с репозиториями Maven, так и с типом плюща.Отличное прочтение о том, как Gradle обрабатывает зависимости, можно найти здесь .
  2. Gradle обрабатывает java, groovy, scala и т.д ... Вы можете найти список стандартных плагинов здесь .Поскольку Gradle построен поверх ANT, вы можете использовать муравьиные задачи для достижения гибкости здания.С Gradle вы можете делать все то же, что и ANT.Вы можете преобразовать свой старый ANT XML в Gradle ИЛИ вы можете импортировать скрипт ANT напрямую и использовать цели в качестве задач в Gradle.Что касается C, то существуют лучшие инструменты для сборки.Я нашел эту ветку , которая может вас заинтересовать.
  3. У Gradle есть плагин Jenkins.Тем не менее, в Gradle есть хорошая функция, называемая оболочкой gradle, которую используют большинство зрелых сборок.Если вы используете эту функцию, вам не нужно беспокоиться о наличии этого плагина.Подробнее об упаковке здесь .

Я мало что знаю о Buildr, поэтому я не могу сравнить, все, что я могу сказать, - это то, что мы счастливые пользователи.

4 голосов
/ 02 июня 2011

Недавно мы оценили Gradle, Buildr и Maven 2 как альтернативу нашему текущему сочетанию Ant и доморощенных Ant-оболочек и в итоге остановились на Gradle. Технически говоря, мы обнаружили, что они (Buildr и Gradle) очень похожи, и причины нашего решения оказались нетехническими:

  1. Gradle = Groovy = Java! Если у вас есть команда разработчиков Java, аргумент в пользу того, что у вас есть возможность выразить логику сборки на языке, который любой может внести свой вклад, трудно победить ... это не суждение о Ruby - просто рассмотрение того, какие ресурсы для разработки доступны. Groovy Closures требует некоторого привыкания, но я нашел это довольно забавным для изучения.

  2. Коммерческая поддержка - это может или не может быть важным для вашего случая, но в нашем случае это был определяющий фактор. Gradle коммерчески поддерживается Gradleware

  3. Принятие пользователями / популярность (мейнстримность) - для проблем, с которыми мы столкнулись, было легче найти ответы на вопросы о Gradle, чем Buildr.

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

Надеюсь, что это помогает и удачи!

...