@@ -7,6 +7,7 @@ import org.gradle.api.artifacts.VersionCatalogsExtension
77import org.gradle.kotlin.dsl.*
88import org.jetbrains.kotlin.gradle.dsl.JvmTarget
99import org.jetbrains.kotlin.gradle.dsl.KotlinAndroidProjectExtension
10+ import org.jetbrains.kotlin.gradle.dsl.kotlinExtension
1011import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
1112
1213const val COMPILE_SDK = 36
@@ -16,20 +17,24 @@ const val TARGET_SDK = 34
1617 * Configure base Kotlin with Android options
1718 */
1819internal fun Project.configureKotlinAndroid (
19- commonExtension : CommonExtension < * , * , * , * , * , * > ,
20+ commonExtension : CommonExtension ,
2021) {
2122 commonExtension.apply {
2223 compileSdk = COMPILE_SDK
2324
24- defaultConfig {
25- minSdk = 21
25+ kotlinExtension. apply {
26+ jvmToolchain( 21 )
2627 }
2728
28- compileOptions {
29+ defaultConfig.apply {
30+ minSdk = 23
31+ }
32+
33+ compileOptions.apply {
2934 // Up to Java 11 APIs are available through desugaring
3035 // https://developer.android.com/studio/write/java11-minimal-support-table
31- sourceCompatibility = JavaVersion .VERSION_17
32- targetCompatibility = JavaVersion .VERSION_17
36+ sourceCompatibility = JavaVersion .VERSION_21
37+ targetCompatibility = JavaVersion .VERSION_21
3338 isCoreLibraryDesugaringEnabled = true
3439 }
3540 }
@@ -38,7 +43,7 @@ internal fun Project.configureKotlinAndroid(
3843 tasks.withType<KotlinCompile >().configureEach {
3944 compilerOptions {
4045 // Set JVM target to 11
41- jvmTarget.set(JvmTarget .JVM_17 )
46+ jvmTarget.set(JvmTarget .JVM_21 )
4247 // Treat all Kotlin warnings as errors (disabled by default)
4348 // Override by setting warningsAsErrors=true in your ~/.gradle/gradle.properties
4449 val warningsAsErrors: String? by project
@@ -64,6 +69,6 @@ internal fun Project.configureKotlinAndroid(
6469 */
6570internal fun Project.configureKotlinAndroidToolchain () {
6671 extensions.configure<KotlinAndroidProjectExtension > {
67- jvmToolchain(17 )
72+ jvmToolchain(21 )
6873 }
6974}
0 commit comments