RFR: 8177100: APIs duplicated in JavaDoc [v2]
Hannes Wallnöfer
hannesw at openjdk.org
Fri May 9 13:22:52 UTC 2025
On Fri, 9 May 2025 11:39:44 GMT, Nizar Benalla <nbenalla at openjdk.org> wrote:
>> Please review this patch to fix a bug where a method can be documented multiple times
>> Consider these 4 classes
>>
>> A (interface)
>> / \
>> / \
>> (abstract class) C B ( interface)
>> \ /
>> \ /
>> D (class)
>>
>>
>> Where `A` declares `testA()`, `C` implements it `public final void testA()`, `B` extends `A` but does *not* override it, `D` extends `C` and implements `B`
>>
>> In the generated javadoc, `testA()` is documented twice.
>>
>> 
>>
>> After the patch, `testA()` is only documented once:
>>
>> 
>
> Nizar Benalla has updated the pull request incrementally with one additional commit since the last revision:
>
> simplify check
As I suspected, this removes methods from the "Methods declared in interface XY" sections. For example, in the `java.lang.StringBuilder` doc page section for methods declared in `java.lang.CharSequence` it removes all methods except `isEmpty()`. So this is not the right place to fix this. I think we should only eliminate these overridden methods if they are to be documented in the subclass (when the declaring class is undocumented).
-------------
PR Comment: https://git.openjdk.org/jdk/pull/25123#issuecomment-2866519308
More information about the javadoc-dev
mailing list