LINUX.ORG.RU

Gradle 7.2

 , , , ,


0

1

Не прошло и полутора месяцев с предыдущего релиза 7.1.1, как на свет появилась новая версия Gradle 7.2 — системы сборки, наиболее популярная среди разработчиков на Java и на других языков программирования JVM, включая разработчиков под Android.

Среди интересных изменений следующие:

  • Gradle может компилировать под Java 17 (сейчас есть RC, релиз в сентябре).
  • Java toolchain теперь поддерживает ещё и Scala.
  • Добавлена новая аннотация @NormalizeLineEndings позволяющая нормализовать формат конца строки. За счёт использования этой аннотации уже улучшена производительность задачи JavaCompile.
  • Улучшена поддержка аутентификации доступа к репозиториям по HTTP. Автоматически поддерживаются параметры <rep_name>AuthHeaderName и <rep_name>AuthHeaderValue (где <rep_name> - название репозитория), значения которых используются во время аутентификации через HTTP-заголовки.
  • В дополнении к Copy.expand(Map) был добавлен метод Copy.expand(Map,Action), позволяющий копировать файлы без преобразования escape-последовательностей. Для этого нужно установить escapeBackslash = true.
  • Попытки повторить HTTP-запросы во время удалённой сборки теперь происходят не только для HTTP GET, но и для HTTP PUT.
  • HTTP-редиректы во время удалённой сборки теперь поддерживаются по умолчанию.

Также исправлено 50 ошибок.

>>> Подробности



Проверено: cetjs2 ()

Это должно быть мини-новостью.

anonymous
()
Ответ на: комментарий от cetjs2

Ну хотя бы тем, что там структура проекта жёстко задана. Открываешь любой pom.xml и всегда знаешь что где искать. А build.gradle в разных проектах структурирован по разному. Особенно, если плагинами всякими обмазаться.

cocucka ★★★★☆
()
Ответ на: комментарий от cocucka

Структуру проекта можно менять и там и там, а по умолчанию она одинаковая. По крайней мере для Java.

hummer
() автор топика

наиболее популярная среди разработчиков на Java

Враньё.

теперь поддерживает ещё и Scala.

Не нужно от слова совсем: sbt на порядок круче.

dimgel ★★★★★
()
Ответ на: комментарий от dimgel

Только почему-то в среднем с gradle можно сбилдить, опубликовать артефакты и задеплоить на машину быстрее, чем ты скажешь «sbt reload».

Ну и по статистике можно видеть, что gradle если не популярнее, то как минимум стремительно в этом направлении движется: https://insights.stackoverflow.com/trends?tags=gradle%2Cmaven

А если посмотреть на продукт «на порядок круче», то все становится ясно: https://insights.stackoverflow.com/trends?tags=gradle%2Cmaven%2Csbt

cdshines ★★★★★
()
Последнее исправление: cdshines (всего исправлений: 2)
Ответ на: комментарий от Nervous

Интересно, что тормозит сильнее — груви или питон.

На холодном запуске Groovy, на прогретой VM – Python.

EXL ★★★★★
()
Ответ на: комментарий от cdshines

Ну и по статистике можно видеть, что gradle если не популярнее, то как минимум стремительно в этом направлении движется: https://insights.stackoverflow.com/trends?tags=gradle%2Cmaven

По графику как раз видно, что рост популярности Gradle затормозился - график вышел на плато. На самом деле это не столько популярность самих утилит, сколько популярность вопросов о них. Про Maven уже давно всё спрошено и на всё отвечено, поэтому количество вопросов о нём упало. А Gradle занял свою нишу и скорее всего достиг аналогичного пика, который был у Maven в 2016 году.

hummer
() автор топика
Ответ на: комментарий от EXL

На холодном запуске Groovy

Да, помню, к gradle прикручивали демон-моде как раз для этого, только оно у меня ни хрена толком не работало никогда.

Nervous ★★★★★
()
Ответ на: комментарий от Nervous

К нему и сейчас прикручивают демон по умолчанию, хотя Java уже научилась сохранять состояние между запусками (забыл как это правильно называется).

hummer
() автор топика
Ответ на: комментарий от cocucka

На самом деле если правильно готовить gradle, то он нормальный. Но только «правильно готовить» в его случае - это не заставить gradle делать то что нужно тебе, а поменять свой проект так, чтобы он хорошо попадал в дефолты gradle.

У меня был опыт рефакторинга gradle-конфигов когда удалось вычистить все плагины, и удалить 80% строк из файлов сборки просто переложив исходники в стандартную систему, чтобы ресурсы, тесты и src были разложены как сейчас принято, а не как разработчику пять лет назад почему-то втемяшилось.

Но у многих разработчиков такой подход (поменять что-то в проекте а не в скриптах) вызывает бурю возмущения, поэтому они костылят в скриптах сборки такое, что там уже ни авторы gradle, ни авторы этих скриптов никогда не разберутся.

alpha ★★★★★
()
Ответ на: комментарий от alpha

На самом деле если правильно готовить gradle, то он нормальный

Вот именно. Только вот обычно он неправильно приготовлен. Откроешь билд-скрипт, а его сам автор уже объяснить не может, столько там всего понаверчено. В мавене, конечно, тоже можно навертеть всякого странного, но обычно всё в рамках разумного.

cocucka ★★★★☆
()
Ответ на: комментарий от alpha

У меня был опыт рефакторинга gradle-конфигов когда удалось вычистить все плагины, и удалить 80% строк из файлов сборки просто переложив исходники в стандартную систему, чтобы ресурсы, тесты и src были разложены как сейчас принято, а не как разработчику пять лет назад почему-то втемяшилось.

Так это же и есть фактически тот же подход, что и в Maven. Всё нестандартное - в своих плагинах или перевести на стандартное, а в pom.xml минимум извращений.

hummer
() автор топика

Зачем нужно это поделие для хибздороф, если везде в суровом корпоративном транснациональном тырпрайсе юзается Ant?

GP
()
Ответ на: комментарий от vikrom

Смусихлебушка, а ты когда нибудь создавал WSDL сервисы и генерировал по ним клиентов? А это 80 процентов современного тырпрайса.

Зы. Тебе ещё и yaml подавай, так как json не такой человекочитаемый?

GP
()
Ответ на: комментарий от token_polyak

Ты ещё сурового тырпрайзного SVN версии 1.6 в привязке к Eclipse 2008 не видел.

Знаешь как там теги нужно переключать на 20 проектах сразу одновременно?

GP
()
Ответ на: комментарий от GP

Зы. Тебе ещё и yaml подавай, так как json не такой человекочитаемый?

Формат не только читаемый должен быть, но и писуемый. И адекватная часть человечества расстреливает одинаково и за джейсон и за иксэмэль. Да, yaml или toml, говноед.

anonymous
()
Ответ на: комментарий от anonymous

Коллега, а сколько триллионов долларов вы выделяете на миграцию XML сервисов на TOML сервисы?

И как TOML request and response body будут выглядеть в одну строчку в текстовом лог файлике?

GP
()
Ответ на: комментарий от hummer

Ну это вообще на самом деле единственно работоспособный подход для работы с инфраструктурными вещами (а сборочная система - это уже инфра). То есть не пытаться их под себя заточить, а дать им делать то, что они заточены делать.

Но разработчики же так не могут, им надо чтобы сборка или деплой делались не благодаря, а вопреки. Если файл лежит не там где его ожидает увидеть тулза - тем хуже для тулзы. И т.п.

alpha ★★★★★
()
Ответ на: комментарий от GP

Коллега, а сколько триллионов долларов вы выделяете на миграцию XML сервисов на TOML сервисы?

Не подскажешь, где купить деревянные колёса для телеги? А то мне не надо.

anonymous
()
Ответ на: комментарий от GP

И как TOML request and response body будут выглядеть в одну строчку в текстовом лог файлике?

Надо просто перестать выделять триллионы на людей, которые изобретают подобные странные задачи, и дело пойдёт.

alpha ★★★★★
()
Ответ на: комментарий от alpha

Но разработчики же так не могут, им надо чтобы сборка или деплой делались не благодаря, а вопреки. Если файл лежит не там где его ожидает увидеть тулза - тем хуже для тулзы. И т.п.

Это решается очень просто – чурбаны с улицы не решают таких вопросов. Все проблемы IT-отрасли – не проблемы разработчиков – а проблемы организации. Как всегда.

anonymous
()
Ответ на: комментарий от vikrom

Вы так говорите, как будто у вас процесс assert-изации XML не автоматизирован.

GP
()
Ответ на: комментарий от token_polyak

Вы так говорите как будто это плохо.

Зы. Razor это альфа версия попытки сделать JSP 21 века, выкинутая по ошибке на прод.

GP
()
Последнее исправление: GP (всего исправлений: 1)
Ответ на: комментарий от d_a

И погапе это самый петушиный езыг погроммирования.

Зы. Но все таки Gradle это таки самая петушиная система сборки.

GP
()
Последнее исправление: GP (всего исправлений: 1)
Ответ на: комментарий от anonymous

Проиграл с потасканой дешёвки-кобольщика.

-мимо-rpgle4-бог

anonymous
()
Ответ на: комментарий от GP

У нас ant. Именно так мы отсеиванием смусихлебов в первый же день.

А зависимости вы качаете-собираете руками?

dimgel ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.