Skip to content

Commit 69d4efb

Browse files
authored
chore: backward compatibility supports JDK11 (#4)
1 parent f497e39 commit 69d4efb

File tree

10 files changed

+44
-39
lines changed

10 files changed

+44
-39
lines changed

README.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,13 @@
55

66
A gradle plugin for generate scaled dimens
77

8+
## Compatibility
9+
10+
| | Minimum version |
11+
|-----|----------------:|
12+
| AGP | 7.4.0 |
13+
| JDK | 11 |
14+
815
## Add Gradle Plugin
916

1017
Using the [plugins DSL](https://docs.gradle.org/current/userguide/plugins.html#sec:plugins_block):
@@ -20,7 +27,7 @@ pluginManagement {
2027
}
2128

2229
plugins {
23-
id("io.github.liu-wanshun.scale-dimens") version "1.0.4"
30+
id("io.github.liu-wanshun.scale-dimens") version "1.0.5"
2431
}
2532
```
2633

@@ -42,7 +49,7 @@ buildscript {
4249
}
4350
}
4451
dependencies {
45-
classpath("io.github.liu-wanshun.scale-dimens:plugins:1.0.4")
52+
classpath("io.github.liu-wanshun.scale-dimens:plugins:1.0.5")
4653
}
4754
}
4855

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<resources>
3-
<dimen name="test1">3dp</dimen>
3+
<dimen name="test1">30dp</dimen>
44
<dimen name="test2">4dp</dimen>
55
</resources>
Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
[versions]
2-
androidGradlePlugin = "8.1.0"
3-
kotlin = "1.9.20"
4-
5-
[libraries]
6-
android-gradlePlugin-api = { group = "com.android.tools.build", name = "gradle-api", version.ref = "androidGradlePlugin" }
2+
kotlin = "1.9.25"
73

84
[plugins]
95
kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.6-all.zip
44
networkTimeout=10000
55
zipStoreBase=GRADLE_USER_HOME
66
zipStorePath=wrapper/dists

build-logic/plugins/build.gradle.kts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,22 @@ plugins {
55
}
66

77
java {
8-
toolchain {
9-
languageVersion.set(JavaLanguageVersion.of(17))
8+
sourceCompatibility = JavaVersion.VERSION_11
9+
targetCompatibility = JavaVersion.VERSION_11
10+
}
11+
kotlin {
12+
compilerOptions {
13+
jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_11)
1014
}
1115
}
1216

1317
dependencies {
14-
compileOnly(libs.android.gradlePlugin.api)
15-
compileOnly("com.android.tools.build:gradle:8.1.0")
18+
compileOnly("com.android.tools.build:gradle-api:7.4.0")
19+
compileOnly("com.android.tools.build:gradle:7.4.0")
1620
implementation(gradleKotlinDsl())
1721
}
1822

23+
version = "1.0.4-SNAPSHOT"
1924
gradlePlugin {
2025
plugins {
2126
create("scaleDimensPlugin") {

build-logic/plugins/src/main/kotlin/app/lws/scaledimens/ScaleDimensPlugin.kt

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,14 @@ class ScaleDimensPlugin : Plugin<Project> {
2323
val resSourceDirectoriesBySourceSet = mutableMapOf<String, Set<File>>()
2424

2525
androidComponents.apply {
26+
27+
finalizeDsl { common ->
28+
common.sourceSets
29+
.map { sourceSet -> sourceSet.name to (sourceSet.res as AndroidSourceDirectorySet).srcDirs }
30+
.forEach { resSourceDirectoriesBySourceSet[it.first] = it.second }
31+
32+
}
33+
2634
onVariants { variant ->
2735
val relevantSourcesSets = setOfNotNull(
2836
"main",
@@ -43,24 +51,16 @@ class ScaleDimensPlugin : Plugin<Project> {
4351
}
4452
.flatten()
4553

46-
variant.sources.res?.let {
47-
val addSourceTaskProvider =
48-
project.tasks.register<ScaleDimensTask>("scaleDimens${variant.name}") {
49-
group = "scale-dimens"
50-
this.resourceDirectories.set(resSourceDirectories)
51-
this.extension.set(extension)
52-
}
53-
it.addGeneratedSourceDirectory(
54-
addSourceTaskProvider,
55-
ScaleDimensTask::outputFolder
56-
)
57-
}
58-
}
59-
finalizeDsl { common ->
60-
common.sourceSets
61-
.map { sourceSet -> sourceSet.name to (sourceSet.res as AndroidSourceDirectorySet).srcDirs }
62-
.forEach { resSourceDirectoriesBySourceSet[it.first] = it.second }
63-
54+
val addSourceTaskProvider =
55+
project.tasks.register<ScaleDimensTask>("scaleDimens${variant.name}") {
56+
group = "scale-dimens"
57+
this.resourceDirectories.set(resSourceDirectories)
58+
this.extension.set(extension)
59+
}
60+
variant.sources.res?.addGeneratedSourceDirectory(
61+
addSourceTaskProvider,
62+
ScaleDimensTask::outputFolder
63+
)
6464
}
6565
}
6666
}

build.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,5 @@ plugins {
33
alias(libs.plugins.kotlin.android) apply false
44
alias(libs.plugins.kotlin.jvm) apply false
55
alias(libs.plugins.android.library) apply false
6-
id("io.github.liu-wanshun.scale-dimens") version "1.0.2" apply false
6+
id("io.github.liu-wanshun.scale-dimens") version "1.0.3" apply false
77
}

gradle/libs.versions.toml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
[versions]
2-
androidGradlePlugin = "8.1.0"
3-
kotlin = "1.9.20"
4-
5-
[libraries]
6-
android-gradlePlugin-api = { group = "com.android.tools.build", name = "gradle-api", version.ref = "androidGradlePlugin" }
2+
androidGradlePlugin = "8.13.0"
3+
kotlin = "1.9.25"
74

85
[plugins]
96
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }

gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.3-all.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

settings.gradle.kts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,4 @@ dependencyResolutionManagement {
2020

2121
include(":app")
2222
include(":library")
23-
include(":build-logic:plugins")
23+
include(":build-logic:plugins")

0 commit comments

Comments
 (0)