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

NullPointerException in com.sun.tools.javac.api.JavacTrees.getElement

XMLWordPrintable

    • b111
    • 9
    • generic
    • generic

      FULL PRODUCT VERSION :
      java version "9-ea"
      Java(TM) SE Runtime Environment (build 9-ea+157)
      Java HotSpot(TM) 64-Bit Server VM (build 9-ea+157, mixed mode)


      ADDITIONAL OS VERSION INFORMATION :
      Linux pcname 4.3.0-0.bpo.1-amd64 #1 SMP Debian 4.3.5-1~bpo8+1 (2016-02-23) x86_64 GNU/Linux

      A DESCRIPTION OF THE PROBLEM :
      I have a wrong link tag at my javadoc like: {@link Classname<_E>}
      With java 8 it appeared at the doc like text.
      With java 9 at generation I got an exception

      REGRESSION. Last worked in version 8u152

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Add the above specified tag to one part of the javadoc.
      Generate javadoc from terminal.


      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      Please file a bug against the javadoc tool via the Java bug reporting page
      (http://bugreport.java.com) after checking the Bug Database (http://bugs.java.com)
      for duplicates. Include error messages and the following diagnostic in your report. Thank you.
      java.lang.NullPointerException
              at jdk.compiler/com.sun.tools.javac.api.JavacTrees.attributeDocReference(JavacTrees.java:445)
              at jdk.compiler/com.sun.tools.javac.api.JavacTrees.getElement(JavacTrees.java:405)
              at jdk.compiler/com.sun.tools.doclint.Checker.visitReference(Checker.java:869)
              at jdk.compiler/com.sun.tools.doclint.Checker.visitReference(Checker.java:102)
              at jdk.compiler/com.sun.tools.javac.tree.DCTree$DCReference.accept(DCTree.java:631)
              at jdk.compiler/com.sun.source.util.DocTreePathScanner.scan(DocTreePathScanner.java:71)
              at jdk.compiler/com.sun.source.util.DocTreeScanner.visitLink(DocTreeScanner.java:296)
              at jdk.compiler/com.sun.tools.doclint.Checker.visitLink(Checker.java:779)
              at jdk.compiler/com.sun.tools.doclint.Checker.visitLink(Checker.java:102)
              at jdk.compiler/com.sun.tools.javac.tree.DCTree$DCLink.accept(DCTree.java:500)
              at jdk.compiler/com.sun.source.util.DocTreePathScanner.scan(DocTreePathScanner.java:71)
              at jdk.compiler/com.sun.source.util.DocTreeScanner.scanAndReduce(DocTreeScanner.java:83)
              at jdk.compiler/com.sun.source.util.DocTreeScanner.scan(DocTreeScanner.java:98)
              at jdk.compiler/com.sun.source.util.DocTreeScanner.visitReturn(DocTreeScanner.java:362)
              at jdk.compiler/com.sun.tools.doclint.Checker.visitReturn(Checker.java:887)
              at jdk.compiler/com.sun.tools.doclint.Checker.visitReturn(Checker.java:102)
              at jdk.compiler/com.sun.tools.javac.tree.DCTree$DCReturn.accept(DCTree.java:654)
              at jdk.compiler/com.sun.source.util.DocTreePathScanner.scan(DocTreePathScanner.java:71)
              at jdk.compiler/com.sun.source.util.DocTreeScanner.scanAndReduce(DocTreeScanner.java:83)
              at jdk.compiler/com.sun.source.util.DocTreeScanner.scan(DocTreeScanner.java:98)
              at jdk.compiler/com.sun.source.util.DocTreeScanner.scanAndReduce(DocTreeScanner.java:106)
              at jdk.compiler/com.sun.source.util.DocTreeScanner.visitDocComment(DocTreeScanner.java:185)
              at jdk.compiler/com.sun.tools.doclint.Checker.visitDocComment(Checker.java:231)
              at jdk.compiler/com.sun.tools.doclint.Checker.visitDocComment(Checker.java:102)
              at jdk.compiler/com.sun.tools.javac.tree.DCTree$DCDocComment.accept(DCTree.java:132)
              at jdk.compiler/com.sun.source.util.DocTreePathScanner.scan(DocTreePathScanner.java:50)
              at jdk.compiler/com.sun.tools.doclint.Checker.scan(Checker.java:193)
              at jdk.compiler/com.sun.tools.doclint.DocLint.scan(DocLint.java:348)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.WorkArounds.runDocLint(WorkArounds.java:111)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.getDocCommentTree0(Utils.java:3049)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.getDocCommentTree(Utils.java:3092)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils$WeakSoftHashMap.computeIfAbsent(Utils.java:3274)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.Utils.getCommentHelper(Utils.java:2882)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberMap$ClassMembers.checkOnPropertiesTags(VisibleMemberMap.java:674)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberMap$ClassMembers.getClassMembers(VisibleMemberMap.java:465)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberMap$ClassMembers.addMembers(VisibleMemberMap.java:371)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberMap$ClassMembers.mapClass(VisibleMemberMap.java:345)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberMap$ClassMembers.build(VisibleMemberMap.java:340)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberMap$ClassMembers.access$100(VisibleMemberMap.java:300)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.util.VisibleMemberMap.<init>(VisibleMemberMap.java:161)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.MemberSummaryBuilder.<init>(MemberSummaryBuilder.java:93)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.MemberSummaryBuilder.getInstance(MemberSummaryBuilder.java:111)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.BuilderFactory.getMemberSummaryBuilder(BuilderFactory.java:251)
              at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.ClassWriterImpl.getNavSummaryLinks(ClassWriterImpl.java:692)
              at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.ClassWriterImpl.addSummaryDetailLinks(ClassWriterImpl.java:677)
              at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.HtmlDocletWriter.addNavLinks(HtmlDocletWriter.java:642)
              at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.ClassWriterImpl.getHeader(ClassWriterImpl.java:199)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.ClassBuilder.buildClassDoc(ClassBuilder.java:152)
              at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
              at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.base/java.lang.reflect.Method.invoke(Method.java:547)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.AbstractBuilder.build(AbstractBuilder.java:157)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.builders.ClassBuilder.build(ClassBuilder.java:125)
              at jdk.javadoc/jdk.javadoc.internal.doclets.formats.html.HtmlDoclet.generateClassFiles(HtmlDoclet.java:263)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.AbstractDoclet.generateClassFiles(AbstractDoclet.java:273)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.AbstractDoclet.startGeneration(AbstractDoclet.java:207)
              at jdk.javadoc/jdk.javadoc.internal.doclets.toolkit.AbstractDoclet.run(AbstractDoclet.java:117)
              at jdk.javadoc/jdk.javadoc.doclets.StandardDoclet.run(StandardDoclet.java:71)
              at jdk.javadoc/jdk.javadoc.internal.tool.Start.parseAndExecute(Start.java:604)
              at jdk.javadoc/jdk.javadoc.internal.tool.Start.begin(Start.java:424)
              at jdk.javadoc/jdk.javadoc.internal.tool.Start.begin(Start.java:341)
              at jdk.javadoc/jdk.javadoc.internal.tool.Main.execute(Main.java:63)
              at jdk.javadoc/jdk.javadoc.internal.tool.Main.main(Main.java:52)

      REPRODUCIBILITY :
      This bug can be reproduced always.

      CUSTOMER SUBMITTED WORKAROUND :
      Fix the javadoc solved the problem. But I think the error message could be more usefull.

            jlahoda Jan Lahoda
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: