I think JetBrains has fully bought into Gradle. I think Maven support has been less and less over time, which shouldn’t be a surprise. Gradle supports native Kotlin build scripts (i.e. build.gradle.kts), as well as putting a lot of work into ensuring their tools fit well within the Gradle ecosystem (exhibit A: https://github.com/JetBrains/intellij-platform-plugin-template). I think it only natural for the creator/owner/maintainer of Kotlin to go full in on the build system that supports the language!
controversial take: who still uses maven? who would prefer xml files over build scripts? (ok… fine, big timers like RedHat definitely do, or at least, have never taken/don’t want to take the time to upgrade lol)
who still uses maven? who would prefer xml files over build scripts? (ok… fine, big timers like RedHat definitely do, or at least, have never taken/don’t want to take the time to upgrade lol)
Simple: Gradle doesn’t work well with inherited projects. If you have a family tree of projects, maven always wins. Lowers complexity, integrations are easier, bom are better integrated, smaller size of ~/.m2 (by literally gigabytes) and no surprises with classpath loading order. It’s not about stupid xml or stupid groovy, it’s about complexity of managing single parent project, 200 children and 150 more grandchildren and having them working out of box. More than 12 years of using Gradle, I’ve never it seen working well outside of Android projects (and it still needs Java7 right?).
End users for gradle are corporations: Google and IntelliJ. Maven has been developed for developers and technical project managers.
Interesting perspective I hadn’t considered before, thanks for sharing. Also, not sure where the Java 7 thing comes from, but I run Java 17 with gradle/kotlin non-android, works very well in IntelliJ, outside of consuming a million gigs of ram lol
Also, not sure where the Java 7 thing comes from, but I run Java 17 with gradle/kotlin non-android
Yes, this seems to have improved, just successfully made a project with gradle and it works with java 18. About 2 years ago it wasn’t possible to use Flutter with Java 9, at all.
I think JetBrains has fully bought into Gradle. I think Maven support has been less and less over time, which shouldn’t be a surprise. Gradle supports native Kotlin build scripts (i.e.
build.gradle.kts
), as well as putting a lot of work into ensuring their tools fit well within the Gradle ecosystem (exhibit A: https://github.com/JetBrains/intellij-platform-plugin-template). I think it only natural for the creator/owner/maintainer of Kotlin to go full in on the build system that supports the language!controversial take: who still uses maven? who would prefer xml files over build scripts? (ok… fine, big timers like RedHat definitely do, or at least, have never taken/don’t want to take the time to upgrade lol)
Simple: Gradle doesn’t work well with inherited projects. If you have a family tree of projects, maven always wins. Lowers complexity, integrations are easier, bom are better integrated, smaller size of
~/.m2
(by literally gigabytes) and no surprises with classpath loading order. It’s not about stupid xml or stupid groovy, it’s about complexity of managing single parent project, 200 children and 150 more grandchildren and having them working out of box. More than 12 years of using Gradle, I’ve never it seen working well outside of Android projects (and it still needs Java7 right?).End users for gradle are corporations: Google and IntelliJ. Maven has been developed for developers and technical project managers.
Interesting perspective I hadn’t considered before, thanks for sharing. Also, not sure where the Java 7 thing comes from, but I run Java 17 with gradle/kotlin non-android, works very well in IntelliJ, outside of consuming a million gigs of ram lol
Yes, this seems to have improved, just successfully made a project with gradle and it works with java 18. About 2 years ago it wasn’t possible to use Flutter with Java 9, at all.