Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8265042

javadoc HTML files not generated for types nested in records

    XMLWordPrintable

Details

    • b22
    • x86_64
    • windows_10
    • Not verified

    Description

      A DESCRIPTION OF THE PROBLEM :
      If a record declares a nested type, the javadoc tool won't generate the HTML file with the documentation for that nested type.

      example/ExampleRecord.java:
      ```
      package example;

      public record ExampleRecord() {
        public record RecordInRecord() {}
        public static class ClassInRecord {}
        public enum EnumInRecord {}
        public interface InterfaceInRecord {}
      }
      ```

      example/ExampleClass.java:
      (to demonstrate expected behavior)
      ```
      package example;

      public class ExampleClass {
        public record RecordInClass() {}
        public static class ClassInClass {}
        public enum EnumInClass {}
        public interface InterfaceInClass {}
      }
      ```

      $ javadoc example example/* -d out
      ```
      Loading source file example\ExampleClass.java...
      Loading source file example\ExampleRecord.java...
      Loading source files for package example...
      Constructing Javadoc information...
      Creating destination directory: "out\"
      Building index for all the packages and classes...
      Standard Doclet version 16+36-2231
      Building tree for all the packages and classes...
      Generating out\example\ExampleClass.html...
      example\ExampleClass.java:3: warning: no comment
      public class ExampleClass {
             ^
      example\ExampleClass.java:5: warning: no comment
        public static class ClassInClass {}
                      ^
      example\ExampleClass.java:6: warning: no comment
        public enum EnumInClass {}
               ^
      example\ExampleClass.java:7: warning: no comment
        public interface InterfaceInClass {}
               ^
      example\ExampleClass.java:4: warning: no comment
        public record RecordInClass() {}
               ^
      Generating out\example\ExampleClass.ClassInClass.html...
      Generating out\example\ExampleClass.EnumInClass.html...
      Generating out\example\ExampleClass.InterfaceInClass.html...
      Generating out\example\ExampleClass.RecordInClass.html...
      Generating out\example\ExampleRecord.html...
      example\ExampleRecord.java:3: warning: no comment
      public record ExampleRecord() {
             ^
      example\ExampleRecord.java:5: warning: no comment
        public static class ClassInRecord {}
                      ^
      example\ExampleRecord.java:6: warning: no comment
        public enum EnumInRecord {}
               ^
      example\ExampleRecord.java:7: warning: no comment
        public interface InterfaceInRecord {}
               ^
      example\ExampleRecord.java:4: warning: no comment
        public record RecordInRecord() {}
               ^
      Generating out\example\package-summary.html...
      Generating out\example\package-tree.html...
      Generating out\overview-tree.html...
      Building index for all classes...
      Generating out\allclasses-index.html...
      Generating out\allpackages-index.html...
      Generating out\index-all.html...
      Generating out\index.html...
      Generating out\help-doc.html...
      10 warnings
      ```

      $ ls out/example
      ```
      ExampleClass.ClassInClass.html ExampleClass.InterfaceInClass.html package-summary.html
      ExampleClass.EnumInClass.html ExampleClass.RecordInClass.html package-tree.html
      ExampleClass.html ExampleRecord.html
      ```

      ^ Notice there is no ExampleRecord.ClassInRecord.html, for example.

      The ExampleRecord page contains broken links to the nested types.

      The nested types are not included package-summary.html or package-tree.html.

      The nested types *are* included in index-all.html, and they do get /class-use/ pages if you use the -use option.


      FREQUENCY : always


      Attachments

        1. example.zip
          0.7 kB
        2. out.zip
          131 kB

        Issue Links

          Activity

            People

              jjg Jonathan Gibbons
              webbuggrp Webbug Group
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: