build.gradle.kts 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import org.jetbrains.kotlin.gradle.dsl.JvmTarget
  2. import org.jetbrains.kotlin.gradle.tasks.KaptGenerateStubs
  3. import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
  4. rootProject.buildDir = File("build")
  5. buildscript {
  6. repositories {
  7. google()
  8. mavenCentral()
  9. }
  10. dependencies {
  11. classpath(libs.android.gradle)
  12. classpath(libs.kotlin.gradle)
  13. classpath(libs.ksp.gradle)
  14. classpath("androidx.navigation:navigation-safe-args-gradle-plugin:2.6.0")
  15. }
  16. }
  17. plugins {
  18. alias(libs.plugins.ksp).apply(false)
  19. id("com.android.application").version("8.0.1").apply(false)
  20. id("com.android.library").version("8.0.1").apply(false)
  21. id("org.jetbrains.kotlin.android").version("1.8.21").apply(false)
  22. id("org.jetbrains.kotlin.kapt").version("1.8.21").apply(false)
  23. id("com.google.dagger.hilt.android").version("2.44.2").apply(false)
  24. id("com.google.protobuf").version("0.9.3").apply(false)
  25. id("org.jetbrains.kotlin.plugin.serialization").version("1.8.21").apply(false)
  26. }
  27. subprojects {
  28. project.buildDir = File("${rootProject.buildDir}/${project.path.replace(":", "/")}")
  29. tasks.withType<KotlinCompile>() {
  30. kotlinOptions {
  31. freeCompilerArgs = listOf("-Xjsr305=strict")
  32. jvmTarget = "11"
  33. }
  34. }
  35. tasks.withType<KaptGenerateStubs> {
  36. compilerOptions {
  37. jvmTarget.set(JvmTarget.JVM_11)
  38. }
  39. }
  40. }
  41. tasks.register("clean", Delete::class) {
  42. delete(rootProject.buildDir)
  43. }