Skip to content

Commit 33ef394

Browse files
committed
Make JDK docs version configurable
1 parent 079111a commit 33ef394

File tree

3 files changed

+14
-3
lines changed

3 files changed

+14
-3
lines changed

build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -244,6 +244,7 @@ val sourcesJar by tasks.registering(Jar::class) {
244244
}
245245

246246
val javadoc by configureJavadoc(
247+
targetVersion = JavaVersion.VERSION_1_8,
247248
failOnError = projectEnvironment.isGithubAction,
248249
overviewFile = "$projectDir/overview.html",
249250
)

buildSrc/src/main/kotlin/net/dv8tion/jda/tasks/javadocs.kt

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,13 @@ import org.gradle.api.tasks.javadoc.Javadoc
66
import org.gradle.external.javadoc.JavadocMemberLevel
77
import org.gradle.external.javadoc.StandardJavadocDocletOptions
88
import org.gradle.kotlin.dsl.getting
9+
import kotlin.math.max
910

10-
fun Project.configureJavadoc(failOnError: Boolean, overviewFile: String?) = tasks.getting(Javadoc::class) {
11+
fun Project.configureJavadoc(
12+
targetVersion: JavaVersion,
13+
failOnError: Boolean,
14+
overviewFile: String?,
15+
) = tasks.getting(Javadoc::class) {
1116
isFailOnError = failOnError
1217

1318
(options as? StandardJavadocDocletOptions)?.apply {
@@ -16,12 +21,16 @@ fun Project.configureJavadoc(failOnError: Boolean, overviewFile: String?) = task
1621

1722
author()
1823
tags("incubating:a:Incubating:")
19-
links("https://docs.oracle.com/en/java/javase/17/docs/api/", "https://takahikokawasaki.github.io/nv-websocket-client/")
24+
// We compile to Java 8 but JDK 8 docs don't seem to supply `element-list` anymore, failing the build
25+
// so we'll be using the closest valid link (JDK 11) instead.
26+
// Failing: https://docs.oracle.com/javase/8/docs/api/element-list
27+
val effectiveJdkDocsVersion = max(11, targetVersion.majorVersion.toInt())
28+
links("https://docs.oracle.com/en/java/javase/${effectiveJdkDocsVersion}/docs/api/", "https://takahikokawasaki.github.io/nv-websocket-client/")
2029

2130
val javaVersion = JavaVersion.current()
2231
if (JavaVersion.VERSION_1_8 < javaVersion) {
2332
addBooleanOption("html5", true) // Adds search bar
24-
addStringOption("-release", "8")
33+
addStringOption("-release", targetVersion.majorVersion)
2534
}
2635

2736
// Fix for https://stackoverflow.com/questions/52326318/maven-javadoc-search-redirects-to-undefined-url

opus-jna/build.gradle.kts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ val jar by tasks.getting(Jar::class) {
9191
}
9292

9393
val javadoc by configureJavadoc(
94+
targetVersion = JavaVersion.VERSION_1_8,
9495
failOnError = projectEnvironment.isGithubAction,
9596
overviewFile = null,
9697
)

0 commit comments

Comments
 (0)