jdk21u-dev build issue : 8326332: Unclosed inline tags cause misalignment in summary tables

Baesken, Matthias matthias.baesken at sap.com
Wed Aug 7 13:13:13 UTC 2024


Hi Erik,  thanks for the clarification.
Unfortunately we do not see  this in GHA ,  so backports look  nice and ‘green’ there .

And some people with strict version requirements in the company most likely have a problem with an old / unpatched JDK20  .


Best regards, Matthias


From: Erik Joelsson <erik.joelsson at oracle.com>
Sent: Wednesday, 7 August 2024 13:58
To: Baesken, Matthias <matthias.baesken at sap.com>; Magnus Ihse Bursie <magnus.ihse.bursie at oracle.com>
Subject: Re: jdk21u-dev build issue : 8326332: Unclosed inline tags cause misalignment in summary tables


Hello Matthias,

If you had sent this to build-dev, you would have received an answer much quicker as both Magnus and I were on vacation.

No, you can't use JDK N features in the langtools modules because because those need to be compatible with the official bootjdk which is version JDK N-1. This has been the case since long before I started working on the JDK.

/Erik
On 7/24/24 12:52 AM, Baesken, Matthias wrote:
Hi,  when building   the backport to 21u-dev
8326332: Unclosed inline tags cause misalignment in summary tables
https://github.com/openjdk/jdk21u-dev/pull/866

with a BOOT JDK 20, I run into these build errors :
(the build works fine when a JDK21 is used as BOOT JDK  ;  in  GHA it is also fine because seems we use JDK21 boot JDK there )


/open_jdk/jdk21u_dev_2/jdk21u-dev/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java:1156: error: cannot find symbol
                        && openTags.getLast().equals(name)) {
                                   ^
  symbol:   method getLast()
  location: variable openTags of type List<Name>
/open_jdk/jdk21u_dev_2/jdk21u-dev/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java:1157: error: cannot find symbol
                    openTags.removeLast();
                            ^
  symbol:   method removeLast()
  location: variable openTags of type List<Name>
/open_jdk/jdk21u_dev_2/jdk21u-dev/src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/HtmlDocletWriter.java:1501: error: cannot find symbol
            result.add(RawHtml.endElement(openTags.removeLast()));
                                                  ^
  symbol:   method removeLast()
  location: variable openTags of type List<Name>
3 errors
gmake[3]: *** [CompileInterimLangtools.gmk:127: /open_jdk/jdk21u_dev_2/buildfolder/buildtools/interim_langtools_modules/jdk.javadoc.interim/_the.BUILD_jdk.javadoc.interim_batch] Error 1
gmake[2]: *** [make/Main.gmk:78: interim-langtools] Error 2


We use here functionality of class List  ( getLast() / removeLast() )  that was added in jdk21.
Shouldn't we be able to use this functionality ?
For backports it would be much easier/ cleaner to have the ability of  clean backports without the need to  remove jdk21 functionality .
Also some people might not even notice those issues , because  they cannot use  old/unpatched/un-secure JDK20  .

It looks like there might be an issue in the build process so that we reference  java.base  from boot jdk20  , or is it done on purpose that for CompileInterimLangtools / jdk.javadoc this cannot be used) ?


Best regards, Matthias
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/build-dev/attachments/20240807/fd5be1ed/attachment-0001.htm>


More information about the build-dev mailing list