javadoc crash on JDK 11 caused by @SuppressWarnings annotations
Pavel Rappo
pavel.rappo at oracle.com
Wed Jun 16 17:16:32 UTC 2021
I haven't heard of this problem. Filing a bug seems the right thing to do. Please provide as much of the relevant information as you can. For example: what options you run javadoc with, what happens if you run javadoc from the same JDK 17 (17-ea+26-2439), how many annotations and where you have added, what the source-lines-of-code count of the project is, etc.
-Pavel
> On 16 Jun 2021, at 17:45, Rick Hillegas <rick.hillegas at gmail.com> wrote:
>
> I work on Apache Derby. Derby is one of the applications which receive advance notice of new Open JDK distributions. We then build our application with the new JDK's javac and javadoc tools and we run our full test suite against the new JVM. As a canary in the mineshaft, we noticed the following significant disruption.
>
> When I tried to build Derby with the Rampdown Phase One build of open JDK 17 (17-ea+26-2439), I saw many warnings related to the deprecation of Security Manager classes and methods, undoubtedly the consequence of JEP 411 (https://openjdk.java.net/jeps/411). In a security-dev at openjdk.java.net email thread titled "blizzard of deprecation warnings related to JEP 411", Alan Bateman recommended that we decorate the warned usages with @SuppressWarnings("removal") annotations, as the Open JDK's own code does. That does silence the warnings. I can then cleanly build the Derby javadoc using 17-ea+26-2439.
>
> However, when I run javadoc on the annotated code using OpenJDK Runtime Environment 18.9 (build 11+28), the JDK 11 javadoc tool dies with the following stack trace:
>
> [javadoc] javadoc: error - An internal exception has occurred.
> [javadoc] (java.lang.OutOfMemoryError: Java heap space)
> [javadoc] Please file a bug against the javadoc tool via the Java bug reporting page
> [javadoc] (http://bugreport.java.com) after checking the Bug Database (http://bugs.java.com)
> [javadoc] for duplicates. Include error messages and the following diagnostic in your report. Thank you.
> [javadoc] java.lang.OutOfMemoryError: Java heap space
> [javadoc] at java.base/java.util.Arrays.copyOf(Arrays.java:3745)
> [javadoc] at java.base/java.lang.StringCoding.encodeUTF8(StringCoding.java:888)
> [javadoc] at java.base/java.lang.StringCoding.encode(StringCoding.java:489)
> [javadoc] at java.base/java.lang.String.getBytes(String.java:981)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.AbstractIndexWriter.createSearchIndexFile(AbstractIndexWriter.java:501)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.AbstractIndexWriter.createSearchIndexFiles(AbstractIndexWriter.java:456)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.SingleIndexWriter.generateIndexFile(SingleIndexWriter.java:133)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.SingleIndexWriter.generate(SingleIndexWriter.java:85)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.HtmlDoclet.generateOtherFiles(HtmlDoclet.java:147)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.AbstractDoclet.startGeneration(AbstractDoclet.java:213)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.AbstractDoclet.run(AbstractDoclet.java:114)
> [javadoc] at jdk.javadoc/jdk.javadoc.doclet.StandardDoclet.run(StandardDoclet.java:72)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.tool.Start.parseAndExecute(Start.java:582)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.tool.Start.begin(Start.java:431)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.tool.Start.begin(Start.java:344)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.tool.Main.execute(Main.java:63)
> [javadoc] at jdk.javadoc/jdk.javadoc.internal.tool.Main.main(Main.java:52)
>
> Is this a known problem with a known mitigation or should I file a javadoc bug for this?
>
> Thanks,
> -Rick
>
More information about the javadoc-dev
mailing list