Skip to content

Commit 7951ab1

Browse files
Merge branch '72-javadoc-updates' into dev
2 parents e8ca7f3 + d8e5fd7 commit 7951ab1

File tree

5 files changed

+56
-29
lines changed

5 files changed

+56
-29
lines changed

build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ buildscript {
2222
essentials_version = '3.1.0'
2323
junit_version = '4.13.1'
2424
mockito_version = '3.3.3'
25-
kotlin_version = '1.4.10'
26-
dokka_version = '0.10.1'
25+
kotlin_version = '1.4.21'
26+
dokka_version = '1.4.20'
2727

2828
println "version=$ob_version"
2929
println "objectboxNativeDependency=$ob_native_dep"

ci/Jenkinsfile-Windows

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
1+
#!/usr/bin/env groovy
2+
13
String buildsToKeep = '500'
24

35
String gradleArgs = '-Dorg.gradle.daemon=false --stacktrace'
6+
boolean isPublish = BRANCH_NAME == 'publish'
47

58
// Note: using single quotes to avoid Groovy String interpolation leaking secrets.
69
def internalRepoArgsBat = '-PinternalObjectBoxRepo=%MVN_REPO_URL% ' +
@@ -67,6 +70,18 @@ pipeline {
6770
}
6871
}
6972
}
73+
74+
stage('package-javadoc-for-web') {
75+
when { expression { return isPublish } }
76+
steps {
77+
bat "gradlew $gradleArgs $internalRepoArgsBat :objectbox-java:packageJavadocForWeb"
78+
}
79+
post {
80+
always {
81+
archiveArtifacts artifacts: 'objectbox-java/build/dist/objectbox-java-web-api-docs.zip'
82+
}
83+
}
84+
}
7085
}
7186

7287
// For global vars see /jenkins/pipeline-syntax/globals

objectbox-java/build.gradle

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,15 @@ javadoc {
3838
}
3939

4040
// Note: use packageJavadocForWeb to get as ZIP.
41-
// Note: the style changes only work if using JDK 10+.
4241
task javadocForWeb(type: Javadoc) {
4342
group = 'documentation'
4443
description = 'Builds Javadoc incl. objectbox-java-api classes with web tweaks.'
4544

45+
javadocTool = javaToolchains.javadocToolFor {
46+
// Note: the style changes only work if using JDK 10+, 11 is latest LTS.
47+
languageVersion = JavaLanguageVersion.of(11)
48+
}
49+
4650
def srcApi = project(':objectbox-java-api').file('src/main/java/')
4751
if (!srcApi.directory) throw new GradleScriptException("Not a directory: ${srcApi}", null)
4852
// Hide internal API from javadoc artifact.

objectbox-kotlin/build.gradle

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
buildscript {
2-
ext.javadocDir = "$buildDir/docs/javadoc"
2+
ext.javadocDir = file("$buildDir/docs/javadoc")
33
}
44

55
apply plugin: 'kotlin'
@@ -15,28 +15,32 @@ tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
1515
}
1616
}
1717

18-
dokka {
19-
outputFormat = 'html'
20-
outputDirectory = javadocDir
18+
tasks.named("dokkaHtml") {
19+
outputDirectory.set(javadocDir)
2120

22-
// Fix "Can't find node by signature": have to manually point to dependencies.
23-
// https://github.com/Kotlin/dokka/wiki/faq#dokka-complains-about-cant-find-node-by-signature-
24-
configuration{
25-
externalDocumentationLink {
26-
// Point to web javadoc for objectbox-java packages.
27-
url = new URL("https://objectbox.io/docfiles/java/current/")
28-
// Note: Using JDK 9+ package-list is now called element-list.
29-
packageListUrl = new URL(url, "element-list")
21+
dokkaSourceSets {
22+
configureEach {
23+
// Fix "Can't find node by signature": have to manually point to dependencies.
24+
// https://github.com/Kotlin/dokka/wiki/faq#dokka-complains-about-cant-find-node-by-signature-
25+
externalDocumentationLink {
26+
// Point to web javadoc for objectbox-java packages.
27+
url.set(new URL("https://objectbox.io/docfiles/java/current/"))
28+
// Note: Using JDK 9+ package-list is now called element-list.
29+
packageListUrl.set(new URL(url, "element-list"))
30+
}
3031
}
3132
}
3233
}
3334

34-
task javadocJar(type: Jar, dependsOn: dokka) {
35+
task javadocJar(type: Jar) {
36+
dependsOn tasks.named("dokkaHtml")
37+
group = 'build'
3538
archiveClassifier.set('javadoc')
3639
from "$javadocDir"
3740
}
3841

3942
task sourcesJar(type: Jar) {
43+
group = 'build'
4044
archiveClassifier.set('sources')
4145
from sourceSets.main.allSource
4246
}

objectbox-rxjava3/build.gradle

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
buildscript {
2-
ext.javadocDir = "$buildDir/docs/javadoc"
2+
ext.javadocDir = file("$buildDir/docs/javadoc")
33
}
44

55
apply plugin: 'java-library'
@@ -16,18 +16,19 @@ tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
1616
}
1717
}
1818

19-
dokka {
20-
outputFormat = 'html'
21-
outputDirectory = javadocDir
19+
tasks.named("dokkaHtml") {
20+
outputDirectory.set(javadocDir)
2221

23-
// Fix "Can't find node by signature": have to manually point to dependencies.
24-
// https://github.com/Kotlin/dokka/wiki/faq#dokka-complains-about-cant-find-node-by-signature-
25-
configuration{
26-
externalDocumentationLink {
27-
// Point to web javadoc for objectbox-java packages.
28-
url = new URL("https://objectbox.io/docfiles/java/current/")
29-
// Note: Using JDK 9+ package-list is now called element-list.
30-
packageListUrl = new URL(url, "element-list")
22+
dokkaSourceSets {
23+
configureEach {
24+
// Fix "Can't find node by signature": have to manually point to dependencies.
25+
// https://github.com/Kotlin/dokka/wiki/faq#dokka-complains-about-cant-find-node-by-signature-
26+
externalDocumentationLink {
27+
// Point to web javadoc for objectbox-java packages.
28+
url.set(new URL("https://objectbox.io/docfiles/java/current/"))
29+
// Note: Using JDK 9+ package-list is now called element-list.
30+
packageListUrl.set(new URL(url, "element-list"))
31+
}
3132
}
3233
}
3334
}
@@ -42,12 +43,15 @@ dependencies {
4243
testImplementation "org.mockito:mockito-core:$mockito_version"
4344
}
4445

45-
task javadocJar(type: Jar, dependsOn: dokka) {
46+
task javadocJar(type: Jar) {
47+
dependsOn tasks.named("dokkaHtml")
48+
group = 'build'
4649
archiveClassifier.set('javadoc')
4750
from "$javadocDir"
4851
}
4952

5053
task sourcesJar(type: Jar) {
54+
group = 'build'
5155
archiveClassifier.set('sources')
5256
from sourceSets.main.allSource
5357
}

0 commit comments

Comments
 (0)