From db6263ec2e79bda56a3a5935feedbebf40fe1f83 Mon Sep 17 00:00:00 2001 From: Gabriel Ittner Date: Sat, 27 Apr 2024 16:21:58 +0200 Subject: [PATCH] fix sources jar for Kotlin/JVM not being included in Gradle metadata (#759) --- .../com/vanniktech/maven/publish/Platform.kt | 19 ++++--------------- 1 file changed, 4 insertions(+), 15 deletions(-) diff --git a/plugin/src/main/kotlin/com/vanniktech/maven/publish/Platform.kt b/plugin/src/main/kotlin/com/vanniktech/maven/publish/Platform.kt index 9e5c75bf..40382ced 100644 --- a/plugin/src/main/kotlin/com/vanniktech/maven/publish/Platform.kt +++ b/plugin/src/main/kotlin/com/vanniktech/maven/publish/Platform.kt @@ -338,7 +338,7 @@ data class KotlinJvm @JvmOverloads constructor( // https://youtrack.jetbrains.com/issue/KT-41582 project.gradlePublishing.publications.create(PUBLICATION_NAME, MavenPublication::class.java) { it.from(project.components.getByName("java")) - it.withKotlinSourcesJar(sourcesJar, project) + it.withJavaSourcesJar(sourcesJar, project) it.withJavadocJar { project.javadocJarTask(javadocJar) } } @@ -469,28 +469,17 @@ sealed class JavadocJar { private const val PUBLICATION_NAME = "maven" -private fun MavenPublication.withKotlinSourcesJar(enabled: Boolean, project: Project) { - val task = if (enabled) { - project.tasks.named("kotlinSourcesJar") - } else { - project.emptySourcesJar() - } - artifact(task) -} - private fun MavenPublication.withJavaSourcesJar(enabled: Boolean, project: Project) { if (enabled) { project.extensions.getByType(JavaPluginExtension::class.java).withSourcesJar() } else { - val task = project.emptySourcesJar() + val task = project.tasks.register("emptySourcesJar", Jar::class.java) { + it.archiveClassifier.set("sources") + } artifact(task) } } -private fun Project.emptySourcesJar(): TaskProvider<*> = tasks.register("emptySourcesJar", Jar::class.java) { - it.archiveClassifier.set("sources") -} - private fun MavenPublication.withJavadocJar(factory: () -> TaskProvider<*>?) { val task = factory() if (task != null) {