RFR: JDK-8306980: Generated docs should contain correct Legal Documents
Jonathan Gibbons
jjg at openjdk.org
Wed Oct 25 23:14:57 UTC 2023
Please review an update to the way that `javadoc` handles the default legal notices when generating docs.
Previously, the default notices were taken from the module's `legal` directory (`$JAVA_HOME/legal/jdk.javadoc`), but in some contexts, these files were either symbolic links, or "descriptive links" -- text files containing the words "Please see ..." -- on platforms that did not support symbolic links. This was set up when using `jlink` to create the image. These "descriptive links" were insufficient and inappropriate when used in a generated docs bundle.
The solution is to put a copy of the necessary files into the `jdk.javadoc` module itself, at build time, as resource files, and to copy the files from there instead of the module's `legal` directory.
The set of files may vary depending on the kind of build, so care is taken to not hardwire any specific list of names into the code. This means using direct access to the underlying `jrt:` file system in order to determine the set of legal notices that were set up at build time.
The main test for legal notices is updated to verify that the words "Please see ..." do not appear in any of the legal notices in a generated docs bundle. There should be no other change to the set of legal notices.
Two other tests were affected, because they provided their own minimal file manager for use with `javadoc`, which relied on default methods in the file manager API. These default methods are not sufficiently for handling paths in non-default file systems, such as the `jrt:` file system used to access the resources for the legal notices. The fix is just to override the necessary methods.
-------------
Commit messages:
- JDK-8306980: Generated docs should contain correct Legal Documents
Changes: https://git.openjdk.org/jdk/pull/16370/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=16370&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8306980
Stats: 87 lines in 6 files changed: 85 ins; 0 del; 2 mod
Patch: https://git.openjdk.org/jdk/pull/16370.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/16370/head:pull/16370
PR: https://git.openjdk.org/jdk/pull/16370
More information about the javadoc-dev
mailing list