Build tool mengelola kompilasi, dependency, dan distribusi. Kotlin memakai Gradle sebagai tool utama, tetapi Maven masih didukung melalui kotlin-maven-plugin.
Pelajari kotlinc CLI: opsi -include-runtime, -cp, -d, mode daemon, serta perbedaan kotlinc-jvm, kotlinc-js, dan kotlinc-native.
Buka → # Gradle FundamentalsPelajari konsep dasar Gradle: lifecycle init-configure-execute, perbedaan Kotlin DSL (build.gradle.kts) vs Groovy DSL (build.gradle).
Buka → # Kotlin Gradle PluginPelajari kotlin-gradle-plugin: cara mendaftarkan plugin kotlin("jvm"), task yang ditambahkan, dan konfigurasi compiler options.
Buka → # Gradle Project StructurePelajari struktur direktori standar Gradle: settings.gradle.kts, build.gradle.kts, src/main/kotlin, src/test/kotlin, serta setup multi-modul.
Buka → # Gradle DependenciesPelajari cara mendeklarasikan dependensi di Gradle: configuration implementation, api, testImplementation, compileOnly, dan format koordinat group:name:version.
Buka → # Gradle TasksPelajari task Gradle: task bawaan plugin Kotlin, custom task dengan tasks.register, doLast vs doFirst, dan parameter via gradleProperty.
Buka → # Gradle Build LifecycleBedah tiga fase build Gradle: Initialization, Configuration, Execution, dengan doLast vs doFirst dan up-to-date checking.
Buka → # Version CatalogsPelajari version catalog Gradle: file libs.versions.toml dengan [versions], [libraries], [bundles], dan cara mereferensikannya di build.gradle.kts.
Buka → # Dependency ResolutionPelajari cara Gradle menyelesaikan dependensi transitif, strategi konflik versi (highest wins, strict, exclude, constraints), dan pemeriksaan tree.
Buka → # Maven FundamentalsPelajari Maven untuk Kotlin: kotlin-maven-plugin, struktur pom.xml, lifecycle phases compile/test/package, serta perintah mvn umum.
Buka → # Maven DependenciesPelajari dependensi Maven: scope compile, test, provided, runtime; repository Maven Central; serta mvn dependency:tree dan dependency:analyze.
Buka → # Build VariantsPelajari build variants Gradle: buildType debug/release, productFlavors, source set per variant, dan applicationIdSuffix untuk multiple build.
Buka → # Reproducible BuildsPelajari reproducible builds: input yang sama menghasilkan output bytecode identik, pengaturan Gradle (isReproducibleFileOrder, SOURCE_DATE_EPOCH), dan verifikasi.
Buka → # Build Tool Best PracticesRangkuman praktik terbaik build tools: pin versi di version catalog, pakai Gradle Wrapper, build bersih di CI, cache dependensi, hindari dynamic version.
Buka →