Skip to content

Commit aef5cc5

Browse files
[Configuration] add DisambiguationRule for org.jetbrains.kotlin.platform.type
1 parent 985b2b7 commit aef5cc5

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

build-logic/src/main/kotlin/convention.catalog.gradle.kts

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,18 @@ catalog {
99
from(files("libs.versions.toml"))
1010
}
1111
}
12+
13+
// если есть несколько вариантов атрибута "org.jetbrains.kotlin.platform.type", то первым выбираем "androidJvm"
14+
dependencies.attributesSchema.attribute(Attribute.of("org.jetbrains.kotlin.platform.type", String::class.java)) {
15+
disambiguationRules.add(PreferAndroidJvmDisambiguationRule::class.java)
16+
}
17+
18+
abstract class PreferAndroidJvmDisambiguationRule : AttributeDisambiguationRule<String> {
19+
override fun execute(details: MultipleCandidatesDetails<String>) {
20+
if ("androidJvm" in details.candidateValues) {
21+
details.closestMatch("androidJvm")
22+
} else if ("jvm" in details.candidateValues) {
23+
details.closestMatch("jvm")
24+
}
25+
}
26+
}

0 commit comments

Comments
 (0)