KPM: Fix JAR naming: put the platform name into appendix, not classifier
This commit is contained in:
+2
-2
@@ -9,7 +9,7 @@ import org.gradle.api.artifacts.Dependency
|
|||||||
import org.gradle.jvm.tasks.Jar
|
import org.gradle.jvm.tasks.Jar
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.disambiguateName
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.disambiguateName
|
||||||
import org.jetbrains.kotlin.gradle.tasks.locateOrRegisterTask
|
import org.jetbrains.kotlin.gradle.tasks.locateOrRegisterTask
|
||||||
import org.jetbrains.kotlin.gradle.utils.dashSeparatedName
|
import org.jetbrains.kotlin.gradle.utils.dashSeparatedLowercaseName
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Registers a [Jar] task with the variant's compilation outputs and attaches this artifact to the given configuration.
|
* Registers a [Jar] task with the variant's compilation outputs and attaches this artifact to the given configuration.
|
||||||
@@ -17,7 +17,7 @@ import org.jetbrains.kotlin.gradle.utils.dashSeparatedName
|
|||||||
val KotlinFragmentCompilationOutputsJarArtifact = FragmentArtifacts<KotlinGradleVariant> {
|
val KotlinFragmentCompilationOutputsJarArtifact = FragmentArtifacts<KotlinGradleVariant> {
|
||||||
val jar = project.locateOrRegisterTask<Jar>(fragment.outputsJarTaskName) {
|
val jar = project.locateOrRegisterTask<Jar>(fragment.outputsJarTaskName) {
|
||||||
it.from(fragment.compilationOutputs.allOutputs)
|
it.from(fragment.compilationOutputs.allOutputs)
|
||||||
it.archiveClassifier.set(dashSeparatedName(fragment.name, fragment.containingModule.moduleClassifier))
|
it.archiveAppendix.set(dashSeparatedLowercaseName(fragment.name, fragment.containingModule.moduleClassifier))
|
||||||
}
|
}
|
||||||
artifact(jar)
|
artifact(jar)
|
||||||
fragment.project.artifacts.add(Dependency.ARCHIVES_CONFIGURATION, jar)
|
fragment.project.artifacts.add(Dependency.ARCHIVES_CONFIGURATION, jar)
|
||||||
|
|||||||
+10
@@ -5,6 +5,8 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.gradle.utils
|
package org.jetbrains.kotlin.gradle.utils
|
||||||
|
|
||||||
|
import java.util.*
|
||||||
|
|
||||||
internal fun lowerCamelCaseName(vararg nameParts: String?): String {
|
internal fun lowerCamelCaseName(vararg nameParts: String?): String {
|
||||||
val nonEmptyParts = nameParts.mapNotNull { it?.takeIf(String::isNotEmpty) }
|
val nonEmptyParts = nameParts.mapNotNull { it?.takeIf(String::isNotEmpty) }
|
||||||
return nonEmptyParts.drop(1).joinToString(
|
return nonEmptyParts.drop(1).joinToString(
|
||||||
@@ -21,6 +23,14 @@ internal fun dashSeparatedName(vararg nameParts: String?): String {
|
|||||||
return nonEmptyParts.joinToString(separator = "-")
|
return nonEmptyParts.joinToString(separator = "-")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
internal fun dashSeparatedLowercaseName(nameParts: Iterable<String?>) =
|
||||||
|
dashSeparatedName(*nameParts.toList().toTypedArray())
|
||||||
|
|
||||||
|
internal fun dashSeparatedLowercaseName(vararg nameParts: String?): String {
|
||||||
|
val nonEmptyParts = nameParts.mapNotNull { it?.takeIf(String::isNotEmpty)?.toLowerCase(Locale.ENGLISH) }
|
||||||
|
return nonEmptyParts.joinToString(separator = "-")
|
||||||
|
}
|
||||||
|
|
||||||
internal fun String.decamelize(): String {
|
internal fun String.decamelize(): String {
|
||||||
return replace(upperCaseRegex) {
|
return replace(upperCaseRegex) {
|
||||||
val (first) = it.destructured
|
val (first) = it.destructured
|
||||||
|
|||||||
Reference in New Issue
Block a user