Alina Dolgikh [JB]
Sebastian Schuberth
11/28/2025, 10:02 AMbuild.gradle and build.gradle.kts), Amper is a build tool that's not based on Gradle and uses declarative syntax as a "first class citizen", correct? And out of curiosity, are there some details about what technology Amper uses? Kotlin? GraalVM?zsmb
11/28/2025, 10:23 AMangery
12/03/2025, 12:09 PMJoffrey
12/04/2025, 10:14 PMAmper is a build tool that's not based on Gradle and uses declarative syntax as a "first class citizen", correct?Yes, you're spot on! Amper used to be just a façade on top of Gradle (and it was distributed as a Gradle plugin), but it's no longer the case. Amper is a standalone build tool with its own CLI, and its entire own implementation. We only have one specific case where this is not the case: when you build an Android application, Amper deals with dependency resolution and compilation, but the bytecode-to-dex conversion is done by the Android Gradle plugin in a generated Gradle build behind the scenes.
And out of curiosity, are there some details about what technology Amper uses? Kotlin? GraalVM?Amper is written entirely in Kotlin, and runs on a regular JVM at the moment. We're investigating the GraalVM native image approach to improve our startup time (which is noticeable in small commands like
./amper show modules for example), but we're not using it right now.Sebastian Schuberth
12/05/2025, 7:27 AMAmper used to be just a façade on top of Gradle (and it was distributed as a Gradle plugin), but it's no longer the case.Ah, good to know, it seems I've missed that (quite important) transition.
We're investigating the GraalVM native image approachThat's good to hear, not only for startup performance, but also to be able to bootstrap (I assume there's a similar mechanism as the Gradle wrapper) Amper without a JVM. See https://github.com/gradle/gradle/issues/11816 for a similar Gradle issue. In any case, thanks for your answers, @Joffrey!
Joffrey
12/05/2025, 7:30 AMgradlew(.bat) script and a wrapper JAR. The script starts the wrapper JAR, which in turn starts Gradle. In Amper, the amper(.bat) script directly launches the Amper JVM (after downloading the proper JRE and the Amper distribution).
See https://amper.org/latest/cli/provisioning/Sebastian Schuberth
12/05/2025, 7:31 AM