История изменений
Исправление Bass, (текущая версия) :
ужасный Maven с этими XML из прошлого века
У XML хотя бы были DTD и схемы, т. е. гораздо труднее написать то, что не работает, и гораздо лучше автодополнение во вменяемой среде.
У Gradle серьёзные проблемы со стабильностью интерфейсов (даже в пределах одной ветки релизов, напр., 4.x или 5.x), а также тем, что Groovy – динамический язык (т. е. вот написал, как советует очередной рецепт со SO, вот оно даже молча отрабатывает, но, с%ка, не работает). И зёрна сакрального знания можно найти на тематических форумах, но зёрна эти устаревают в течение полугода.
По поводу стабильности интерфейсов – в качестве демонстрации, попробуйте написать мало-мальски функциональный модуль расширения, и попробуйте добиться, чтобы он одинаково хорошо работал одновременно хотя бы на 5.0 и 5.4.х. И Вы меня поймёте.
По поводу Groovy – дела стали несколько лучше с появлением Kotlin DSL (.kts), но всё по-прежнему не идеально. Когда нужно сделать шаг влево или вправо, снова приходится шарить по исходникам DSL, матерясь про себя и ища очередной чёртов extension method. Здесь стоит заметить, кстати, что Kotlin tooling не идеален даже в IDEA, а в альтернативных средах разработки использование проектов на Gradle превращается в ад.
Да, у Gradle действительно есть плюсы вроде параллельной и инкрементной сборки (т. е. из консоли оно зачастую собирается быстрее), но в результате на проекте из 20-30 модулей я теперь по 2-3 минуты жду, пока IDEA при окрытии соблаговолит построить проектную модель.
P. S. И ещё я неоднократно видел, как неофиты-хипстеры (любители всяких docker’ов и проч.) пихают свой build.gradle
в т. ч. для автоматизации обычных админских задач, т. е. стартуют JVM даже там, где нужно просто скопировать файл – просто потому, что не осилили make
. Адепты Maven, по моему опыту, таким не страдали.
Исправление Bass, :
ужасный Maven с этими XML из прошлого века
У XML хотя бы были DTD и схемы, т. е. гораздо труднее написать то, что не работает, и гораздо лучше автодополнение во вменяемой среде.
У Gradle серьёзные проблемы со стабильностью интерфейсов (даже в пределах одной ветки релизов, напр., 4.x или 5.x), а также тем, что Groovy – динамический язык (т. е. вот написал, как советует очередной рецепт со SO, вот оно даже молча отрабатывает, но, с%ка, не работает). И зёрна сакрального знания можно найти на тематических форумах, но зёрна эти устаревают в течение полугода.
По поводу стабильности интерфейсов – в качестве демонстрации, попробуйте написать мало-мальски функциональный модуль расширения, и попробуйте добиться, чтобы он одинаково хорошо работал одновременно хотя бы на 5.0 и 5.4.х. И Вы меня поймёте.
По поводу Groovy – дела стали несколько лучше с появлением Kotlin DSL (.kts), но всё по-прежнему не идеально. Когда нужно сделать шаг влево или вправо, снова приходится шарить по исходникам DSL, матерясь про себя и ища очередной чёртов extension method. Здесь стоит заметить, кстати, что Kotlin tooling не идеален даже в IDEA, а в альтернативных средах разработки использование проектов на Gradle превращается в ад.
Да, у Gradle действительно есть плюсы вроде параллельной и инкрементной сборки (т. е. из консоли оно зачастую собирается быстрее), но в результате на проекте из 20-30 модулей я теперь по 2-3 минуты жду, пока IDEA при окрытии соблаговолит построить проектную модель.
Исходная версия Bass, :
ужасный Maven с этими XML из прошлого века
У XML хотя бы были DTD и схемы, т. е. гораздо труднее написать то, что не работает, и граздо лучше автодополнение во вменяемой среде.
У Gradle серьёзные проблемы со стабильностью интерфейсов (даже в пределах одной ветки релизов, напр., 4.x или 5.x), а также тем, что Groovy – динамический язык (т. е. вот написал, как советует очередной рецепт со SO, вот оно даже молча отрабатывает, но, с%ка, не работает). И зёрна сакрального знания можно найти на тематических форумах, но зёрна эти устаревают в течение полугода.
По поводу стабильности интерфейсов – в качестве демонстрации, попробуйте написать мало-мальски функциональный модуль расширения, и попробуйте добиться, чтобы он одинаково хорошо работал одновременно хотя бы на 5.0 и 5.4.х. И Вы меня поймёте.
По поводу Groovy – дела стали несколько лучше с появлением Kotlin DSL (.kts), но всё по-прежнему не идеально. Когда нужно сделать шаг влево или вправо, снова приходится шарить по исходникам DSL, матерясь про себя и ища очередной чёртов extension method. Здесь стоит заметить, кстати, что Kotlin tooling не идеален даже в IDEA, а в альтернативных средах разработки использование проектов на Gradle превращается в ад.
Да, у Gradle действительно есть плюсы вроде параллельной и инкрементной сборки (т. е. из консоли оно зачастую собирается быстрее), но в результате на проекте из 20-30 модулей я теперь по 2-3 минуты жду, пока IDEA при окрытии соблаговолит построить проектную модель.