Skip to content

Commit 3671561

Browse files
committed
downgrade JDK for compile issues
1 parent d17ec99 commit 3671561

File tree

7 files changed

+32
-31
lines changed

7 files changed

+32
-31
lines changed

build-logic/build.gradle.kts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,16 @@ plugins {
22
`kotlin-dsl`
33
}
44

5-
group = "ycharts.android"
5+
group = "ycharts.android.buildlogic"
66

77
repositories {
88
mavenCentral()
99
google()
1010
}
1111

1212
java {
13-
sourceCompatibility = JavaVersion.VERSION_17
14-
targetCompatibility = JavaVersion.VERSION_17
13+
sourceCompatibility = JavaVersion.VERSION_11
14+
targetCompatibility = JavaVersion.VERSION_11
1515
}
1616

1717
dependencies {
@@ -21,7 +21,7 @@ dependencies {
2121

2222
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile>().configureEach {
2323
kotlinOptions {
24-
jvmTarget = versionCatalogLibs.versions.kotlinJvmTarget.get()
24+
jvmTarget = JavaVersion.VERSION_11.toString()
2525
}
2626
}
2727
gradlePlugin {

build-logic/src/main/java/conventions/ComposeApplicationConventionPlugin.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import org.gradle.api.artifacts.VersionCatalogsExtension
77
import org.gradle.kotlin.dsl.getByType
88
import ycharts.android.configureComposeApplication
99

10+
1011
/**
1112
* Compose application convention plugin
1213
*

build-logic/src/main/java/ycharts/android/ComposeApplication.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import org.gradle.api.artifacts.VersionCatalogsExtension
66
import org.gradle.kotlin.dsl.dependencies
77
import org.gradle.kotlin.dsl.getByType
88

9+
910
/**
1011
* Configure compose application
1112
*
@@ -34,4 +35,4 @@ internal fun Project.configureComposeApplication(
3435

3536
}
3637
}
37-
}
38+
}

build-logic/src/main/java/ycharts/android/KotlinAndroid.kt

Lines changed: 21 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ package ycharts.android
33
import com.android.build.api.dsl.CommonExtension
44
import org.gradle.api.JavaVersion
55
import org.gradle.api.Project
6-
import org.gradle.api.plugins.ExtensionAware
76
import org.gradle.kotlin.dsl.provideDelegate
8-
import org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptions
7+
import org.gradle.kotlin.dsl.withType
8+
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
99

1010
/**
1111
* Configure base Kotlin with Android options
@@ -34,28 +34,26 @@ internal fun Project.configureKotlinAndroid(
3434
}
3535
}
3636
compileOptions {
37-
sourceCompatibility = JavaVersion.VERSION_17
38-
targetCompatibility = JavaVersion.VERSION_17
39-
isCoreLibraryDesugaringEnabled = false
37+
sourceCompatibility = JavaVersion.VERSION_11
38+
targetCompatibility = JavaVersion.VERSION_11
4039
}
41-
42-
kotlinOptions {
43-
val warningsAsErrors: String? by project
44-
allWarningsAsErrors = warningsAsErrors.toBoolean()
45-
46-
freeCompilerArgs = freeCompilerArgs + listOf(
47-
"-opt-in=kotlin.RequiresOptIn",
48-
// Enable experimental coroutines APIs, including Flow
49-
"-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
50-
"-opt-in=kotlinx.coroutines.FlowPreview",
51-
"-opt-in=kotlin.Experimental",
52-
)
53-
54-
jvmTarget = JavaVersion.VERSION_17.toString()
40+
// Use withType to workaround https://youtrack.jetbrains.com/issue/KT-55947
41+
tasks.withType<KotlinCompile>().configureEach {
42+
kotlinOptions {
43+
// Set JVM target to 11
44+
jvmTarget = JavaVersion.VERSION_11.toString()
45+
// Treat all Kotlin warnings as errors (disabled by default)
46+
// Override by setting warningsAsErrors=true in your ~/.gradle/gradle.properties
47+
val warningsAsErrors: String? by project
48+
allWarningsAsErrors = warningsAsErrors.toBoolean()
49+
freeCompilerArgs = freeCompilerArgs + listOf(
50+
"-opt-in=kotlin.RequiresOptIn",
51+
// Enable experimental coroutines APIs, including Flow
52+
"-opt-in=kotlinx.coroutines.ExperimentalCoroutinesApi",
53+
"-opt-in=kotlinx.coroutines.FlowPreview",
54+
"-opt-in=kotlin.Experimental",
55+
)
56+
}
5557
}
5658
}
5759
}
58-
59-
fun CommonExtension<*, *, *, *>.kotlinOptions(block: KotlinJvmOptions.() -> Unit) {
60-
(this as ExtensionAware).extensions.configure("kotlinOptions", block)
61-
}

gradle/libs.versions.toml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22
# Define the dependency versions
33
#Project
44
#kotlin
5-
kotlinVersion = "1.8.20"
6-
kotlinJvmTarget = "17"
5+
kotlinVersion = "1.8.10"
76
kotlinxCoroutines = "1.6.4"
87
kotlinxSerializationJson = "1.5.0"
98
#gradle
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
#Sat Apr 01 05:16:59 IST 2023
22
distributionBase=GRADLE_USER_HOME
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.1-bin.zip
44
networkTimeout=10000
55
distributionPath=wrapper/dists
66
zipStorePath=wrapper/dists
77
zipStoreBase=GRADLE_USER_HOME
8+

settings.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ pluginManagement {
77
}
88
}
99
dependencyResolutionManagement {
10+
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
1011
repositories {
1112
google()
1213
mavenCentral()

0 commit comments

Comments
 (0)