From d2a349868eb1fdb1d7272e805dba0411bf6d8ab1 Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Wed, 29 Oct 2025 10:02:34 +0000 Subject: [PATCH] Limit Kotlin API docs to Kotlin code Previously, the Kotlin API docs included Java APIs. This commit corrects this by suppressing all Dokkatoo source sets other than main (main in src/main/kotlin, javaMain is src/main/java). Dokkatoo is sensitive to the order in which plugins are applied. This commit adapts to the sensitivity by changing the order in which the Dokatoo and Kotlin JVM plugins are applied. This prevents the Dokatoo plugin for overwriting the configuration that's applied by our Kotlin conventions. Closes gh-47763 --- .../org/springframework/boot/build/KotlinConventions.java | 3 +++ spring-boot-project/spring-boot-docs/build.gradle | 2 +- spring-boot-project/spring-boot-test/build.gradle | 2 +- spring-boot-project/spring-boot/build.gradle | 6 +++--- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/buildSrc/src/main/java/org/springframework/boot/build/KotlinConventions.java b/buildSrc/src/main/java/org/springframework/boot/build/KotlinConventions.java index 18f26be64b8..13517de6420 100644 --- a/buildSrc/src/main/java/org/springframework/boot/build/KotlinConventions.java +++ b/buildSrc/src/main/java/org/springframework/boot/build/KotlinConventions.java @@ -97,6 +97,9 @@ class KotlinConventions { link.getPackageListUrl().set(URI.create(url + "/element-list")); }); } + else { + sourceSet.getSuppress().set(true); + } }); } diff --git a/spring-boot-project/spring-boot-docs/build.gradle b/spring-boot-project/spring-boot-docs/build.gradle index 5911f130752..2f6899d91ad 100644 --- a/spring-boot-project/spring-boot-docs/build.gradle +++ b/spring-boot-project/spring-boot-docs/build.gradle @@ -17,10 +17,10 @@ import org.springframework.boot.build.docs.ConfigureJavadocLinks plugins { + id "org.jetbrains.kotlin.jvm" id "dev.adamko.dokkatoo-html" id "java" id "org.antora" - id "org.jetbrains.kotlin.jvm" id "org.springframework.boot.aggregator" id "org.springframework.boot.antora-contributor" id "org.springframework.boot.antora-dependencies" diff --git a/spring-boot-project/spring-boot-test/build.gradle b/spring-boot-project/spring-boot-test/build.gradle index c5f24330ca3..dbd2513f46b 100644 --- a/spring-boot-project/spring-boot-test/build.gradle +++ b/spring-boot-project/spring-boot-test/build.gradle @@ -15,9 +15,9 @@ */ plugins { + id "org.jetbrains.kotlin.jvm" id "dev.adamko.dokkatoo-html" id "java-library" - id "org.jetbrains.kotlin.jvm" id "org.springframework.boot.deployed" id "org.springframework.boot.optional-dependencies" } diff --git a/spring-boot-project/spring-boot/build.gradle b/spring-boot-project/spring-boot/build.gradle index 98e2db2fe41..d1f3e64e4d1 100644 --- a/spring-boot-project/spring-boot/build.gradle +++ b/spring-boot-project/spring-boot/build.gradle @@ -15,13 +15,13 @@ */ plugins { - id "dev.adamko.dokkatoo-html" - id "java-library" - id "java-test-fixtures" id "org.jetbrains.kotlin.jvm" + id "dev.adamko.dokkatoo-html" id "org.springframework.boot.configuration-properties" id "org.springframework.boot.deployed" id "org.springframework.boot.optional-dependencies" + id "java-library" + id "java-test-fixtures" } description = "Spring Boot"