Uploaded image for project: 'Maven Javadoc Plugin'
  1. Maven Javadoc Plugin
  2. MJAVADOC-407

Cannot parse annotations when generating javadoc

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.10
    • 2.10.1
    • None
    • None
    • Linux and windows.
      Maven 3.0.4 , JDK 1.6.0.43

    Description

      See full issue text at : http://stackoverflow.com/questions/25971832/javadoc-generation-failed-classcastexception-com-sun-tools-javadoc-classdocim

      I'm getting the following error when I do

      mvn clean deploy -DperformRelease=true
      [ERROR] Exit code: 1 - .java:3: package javax.inject does not exist
      [ERROR] import javax.inject.Named;
      [ERROR]
      [ERROR] TransactionServiceExternalImpl.java:5: cannot find symbol
      [ERROR] symbol: class Named
      [ERROR] @Named("transactionServiceExternal")
      [ERROR]
      [ERROR] java.lang.ClassCastException: com.sun.tools.javadoc.ClassDocImpl cannot be cast to com.sun.javadoc.AnnotationTypeDoc

      The POM is this...

      <groupId>com.xxx</groupId>
      <artifactId>ts-impl/artifactId>
      <version>2.4.0-SNAPSHOT</version>
      
      <dependencies>
          <dependency>
              <groupId>javax.inject</groupId>
              <artifactId>javax.inject</artifactId>
              <version>1</version>
          </dependency>
      </dependencies>

      There is only one class...

      import javax.inject.Named;
      
      @Named("transactionServiceExternal")
      public class TransactionServiceExternalImpl 
      {
      }

      I get the error with

      jdk1.5.0_22
      jdk1.6.0_29
      jdk1.6.0_43
      jdk1.6.0_43_32bit
      But NOT with...

      jdk1.7.0_05
      Anyone have any ideas?

      Notes: Apache Maven 3.0.4 (r1232337; 2012-01-17 08:44:56+0000)

      ____________________________

      I now know that the reason is that the Maven Javadoc Plugin has changed from 2.9.1 to 2.10. and this is the cause of the problem.

      I can see this warning...

      [WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-javadoc-plugin is missing. [WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-deploy-plugin is missing.

      By setting the following in my pom....

      org.apache.maven.plugins maven-javadoc-plugin 2.9.1 attach-javadocs jar

      I can fix the version back to the last release.

      Attachments

        1. AbstractJavadocMojo.java.patch
          2 kB
          Emeric MARTINEAU

        Issue Links

          Activity

            People

              michael-o Michael Osipov
              jeff_porter jeff porter
              Votes:
              12 Vote for this issue
              Watchers:
              15 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: