Skip to content

Commit e4fa639

Browse files
authored
Align Javadoc configuration to Java 21 standards (#3230)
This also upgrades highlight.js to version 11.9.0 and uses its cdnjs distribution.
1 parent 71e2fdb commit e4fa639

84 files changed

Lines changed: 78 additions & 9019 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
File renamed without changes.

gradle/mockito-core/javadoc.gradle

Lines changed: 20 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
//It seems the gradle javadoc task works file by file and as such disable some features of javadoc tool
22
//such as link to packages, https://groups.google.com/d/msg/gradle-dev/R83dy_6PHMc/bgw0cUTMFAAJ
3-
def javaDocsDir = 'gradle/mockito-core/java-docs'
3+
def javaDocsDir = 'gradle/java-docs'
44

55
tasks.named("javadoc", Javadoc) {
6+
inputs.dir("src/main/javadoc")
7+
68
description "Creates javadoc html for Mockito API."
79

810
// For more details on the format
9-
// see https://docs.oracle.com/javase/8/docs/technotes/tools/windows/javadoc.html
11+
// see https://docs.oracle.com/en/java/javase/21/javadoc/javadoc.html
1012

1113
source = sourceSets.main.allJava
1214
destinationDir = layout.buildDirectory.dir("javadoc").get().asFile
@@ -25,38 +27,30 @@ tasks.named("javadoc", Javadoc) {
2527
// for this reason the javadoc output is suppressed and can be reactivated with --info option.
2628
exclude 'org/mockito/internal'
2729

30+
options.addBooleanOption('-allow-script-in-comments', true)
31+
options.addFileOption('-add-stylesheet', rootProject.file("src/main/javadoc/mockito-theme.css"))
32+
options.addStringOption('Xwerror', '-quiet')
33+
options.bottom("""
34+
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/obsidian.min.css">
35+
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"></script>
36+
<script>hljs.highlightAll();</script>
37+
""".replaceAll(/\r|\n|[ ]{8}/, ""))
38+
options.charSet = 'UTF-8'
39+
options.docEncoding = 'UTF-8'
2840
options.docTitle = """<h1><a href="org/mockito/Mockito.html">Click to see examples</a>. Mockito ${project.version} API.</h1>"""
29-
options.windowTitle = "Mockito ${project.version} API"
41+
options.encoding = 'UTF-8'
3042
options.group("Main package", ["org.mockito"])
43+
options.links('https://junit.org/junit4/javadoc/4.13.2/')
44+
options.linksOffline('https://docs.oracle.com/en/java/javase/11/docs/api/', javaDocsDir)
3145
options.memberLevel = JavadocMemberLevel.PROTECTED
3246
options.outputLevel = JavadocOutputLevel.QUIET
33-
options.charSet = 'UTF-8'
34-
options.encoding = 'UTF-8'
35-
options.docEncoding = 'UTF-8'
36-
options.use = true
3747
options.splitIndex = true
38-
options.noDeprecated = false
39-
options.noDeprecatedList = false
40-
options.noIndex = false
41-
options.noNavBar = false
42-
options.noTree = false
43-
options.links('https://junit.org/junit4/javadoc/4.13.2/')
44-
options.linksOffline('https://docs.oracle.com/en/java/javase/11/docs/api/', javaDocsDir)
45-
options.bottom("""
46-
<script type="text/javascript" src="{@docRoot}/js/jdk6-project-version-insert.min.js"></script>
47-
<script type="text/javascript" src="{@docRoot}/js/jquery-1.7.min.js"></script>
48-
<script type="text/javascript" src="{@docRoot}/js/highlight-8.6-java/highlight.pack.js"></script>
49-
50-
<link rel="stylesheet" type="text/css" href="{@docRoot}/js/highlight-8.6-java/styles/obsidian.css"/>
51-
<script type="text/javascript" src="{@docRoot}/js/index.js" async defer></script>
52-
""".replaceAll(/\r|\n|[ ]{8}/, ""))
53-
options.stylesheetFile rootProject.file("src/javadoc/stylesheet.css")
54-
options.addStringOption('Xwerror', '-quiet')
55-
options.addBooleanOption('-allow-script-in-comments', true)
48+
options.use = true
49+
options.windowTitle = "Mockito ${project.version} API"
5650

5751
doLast {
5852
copy {
59-
from "src/javadoc"
53+
from "src/main/javadoc"
6054
into layout.buildDirectory.dir("javadoc")
6155
}
6256
}
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
//It seems the gradle javadoc task works file by file and as such disable some features of javadoc tool
2+
//such as link to packages, https://groups.google.com/d/msg/gradle-dev/R83dy_6PHMc/bgw0cUTMFAAJ
3+
def javaDocsDir = "$rootDir/gradle/java-docs"
4+
5+
tasks.named("javadoc", Javadoc) {
6+
inputs.dir("$rootDir/src/main/javadoc")
7+
8+
description "Creates javadoc html for Mockito JUnit Jupiter."
9+
10+
// For more details on the format
11+
// see https://docs.oracle.com/en/java/javase/21/javadoc/javadoc.html
12+
13+
source = sourceSets.main.allJava
14+
destinationDir = layout.buildDirectory.dir("javadoc").get().asFile
15+
title = "Mockito JUnit Jupiter ${project.version} API"
16+
17+
options.addBooleanOption('-allow-script-in-comments', true)
18+
options.addFileOption('-add-stylesheet', rootProject.file("$rootDir/src/main/javadoc/mockito-theme.css"))
19+
options.addStringOption('Xwerror', '-quiet')
20+
options.bottom("""
21+
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/obsidian.min.css">
22+
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"></script>
23+
<script>hljs.highlightAll();</script>
24+
""".replaceAll(/\r|\n|[ ]{8}/, ""))
25+
options.charSet = 'UTF-8'
26+
options.docEncoding = 'UTF-8'
27+
options.docTitle = """<h1>Mockito JUnit Jupiter ${project.version} API.</h1>"""
28+
options.encoding = 'UTF-8'
29+
options.group("Main package", ["org.mockito.junit.jupiter"])
30+
options.linksOffline('https://docs.oracle.com/en/java/javase/11/docs/api/', javaDocsDir)
31+
options.memberLevel = JavadocMemberLevel.PROTECTED
32+
options.outputLevel = JavadocOutputLevel.QUIET
33+
options.splitIndex = true
34+
options.use = true
35+
options.windowTitle = "Mockito JUnit Jupiter ${project.version} API"
36+
37+
doLast {
38+
copy {
39+
from "$rootDir/src/main/javadoc"
40+
into layout.buildDirectory.dir("javadoc")
41+
}
42+
}
43+
}

0 commit comments

Comments
 (0)