Skip to content

Commit 3477689

Browse files
committed
javadoc modularity errors fix, effin' module system
1 parent 48db6c7 commit 3477689

2 files changed

Lines changed: 38 additions & 6 deletions

File tree

build.gradle

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,20 @@ tasks.withType(JavaCompile) {
6868
apply from: file("gradle/javadoc_cleanup.gradle")
6969

7070
javadoc {
71-
include 'io/reactivex/rxjava3/**' // all public under rxjava3
72-
exclude "**/internal/**"
73-
exclude "**/test/**"
74-
exclude "**/perf/**"
75-
exclude "**/jmh/**"
71+
source = sourceSets.main.allJava.matching {
72+
include 'io/reactivex/rxjava3/**'
73+
exclude '**/internal/**'
74+
exclude '**/test/**'
75+
exclude '**/perf/**'
76+
exclude '**/jmh/**'
77+
exclude 'module-info.java'
78+
}
79+
80+
// Explicitly disable modularity inference (prevents Gradle adding module flags)
81+
modularity.inferModulePath = false
82+
83+
classpath = sourceSets.main.runtimeClasspath + sourceSets.main.output
84+
7685
options {
7786
windowTitle = "RxJava Javadoc ${project.version}"
7887
}
@@ -90,6 +99,9 @@ javadoc {
9099
"https://reactivex.io/RxJava/org.reactivestreams.javadoc/${reactiveStreamsVersion}/"
91100
)
92101

102+
// modularity.inferModulePath = true // let Gradle handle deps on --module-path
103+
104+
93105
finalizedBy javadocCleanup
94106
}
95107

src/main/module/module-info.java

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,27 @@
2727
exports io.reactivex.rxjava3.schedulers;
2828
exports io.reactivex.rxjava3.subjects;
2929
exports io.reactivex.rxjava3.subscribers;
30-
30+
31+
// I don't know why, but without these, the Javadoc won't work and complains
32+
// about the missing internals
33+
exports io.reactivex.rxjava3.internal.disposables;
34+
exports io.reactivex.rxjava3.internal.functions;
35+
exports io.reactivex.rxjava3.internal.fuseable;
36+
exports io.reactivex.rxjava3.internal.jdk8;
37+
exports io.reactivex.rxjava3.internal.observers;
38+
exports io.reactivex.rxjava3.internal.operators.completable;
39+
exports io.reactivex.rxjava3.internal.operators.flowable;
40+
exports io.reactivex.rxjava3.internal.operators.maybe;
41+
exports io.reactivex.rxjava3.internal.operators.mixed;
42+
exports io.reactivex.rxjava3.internal.operators.observable;
43+
exports io.reactivex.rxjava3.internal.operators.parallel;
44+
exports io.reactivex.rxjava3.internal.operators.single;
45+
exports io.reactivex.rxjava3.internal.queue;
46+
exports io.reactivex.rxjava3.internal.schedulers;
47+
exports io.reactivex.rxjava3.internal.subscribers;
48+
exports io.reactivex.rxjava3.internal.subscriptions;
49+
exports io.reactivex.rxjava3.internal.util;
50+
3151
requires transitive org.reactivestreams;
3252

3353
requires java.management;

0 commit comments

Comments
 (0)