You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Sebastian Annies (JIRA)" <ji...@codehaus.org> on 2008/02/25 16:38:37 UTC

[jira] Created: (MJAVADOC-178) Transitive Dependencies to Taglet Artifacts are not resolved nor added to the classpath

Transitive Dependencies to Taglet Artifacts are not resolved nor added to the classpath
---------------------------------------------------------------------------------------

                 Key: MJAVADOC-178
                 URL: http://jira.codehaus.org/browse/MJAVADOC-178
             Project: Maven 2.x Javadoc Plugin
          Issue Type: Bug
    Affects Versions: 2.3
         Environment: any
            Reporter: Sebastian Annies
            Priority: Minor
         Attachments: build-utils-1.0.9-SNAPSHOT.jar

My taglet artifact has a dependency to commons-lang. But when executing the javadoc target the javadoc process complains with a ClassNotFoundException (in my case {{StringEscapeUtils}} but that doesn't matter). 
Hmm - I had a look into the source and as far as I can see it the transitive dependencies are not resolved (only resolve is called and not resolveTransitively).

The workaround is to specify the transitive dependencies by hand taglet definitions without {{<tagletClass>}} elements:
{code:xml}
     <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <configuration>
          <taglets>
            <taglet>

              <tagletClass>com.coremedia.drm.javadoc.api.ExampleTaglet</tagletClass>

              <tagletArtifact>
                <groupId>com.coremedia.drm.roapserver</groupId>
                <artifactId>build-utils</artifactId>
                <version>1.0.9-SNAPSHOT</version>
              </tagletArtifact>
            </taglet>
            <taglet>

              <tagletArtifact>
                <groupId>commons-lang</groupId>
                <artifactId>commons-lang</artifactId>
                <version>2.3</version>
              </tagletArtifact>
            </taglet>
          </taglets>
        </configuration>
      </plugin>
{code} 

To reproduce remove the second {{<taglet>}} element and include an {{@api.example}} tag in one of your classes. 


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Closed: (MJAVADOC-178) Transitive Dependencies to Taglet Artifacts are not resolved nor added to the classpath

Posted by "Vincent Siveton (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/MJAVADOC-178?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Vincent Siveton closed MJAVADOC-178.
------------------------------------

         Assignee: Vincent Siveton
       Resolution: Fixed
    Fix Version/s: 2.5

Fixed in r661516, snapshot deployed

> Transitive Dependencies to Taglet Artifacts are not resolved nor added to the classpath
> ---------------------------------------------------------------------------------------
>
>                 Key: MJAVADOC-178
>                 URL: http://jira.codehaus.org/browse/MJAVADOC-178
>             Project: Maven 2.x Javadoc Plugin
>          Issue Type: Bug
>    Affects Versions: 2.3
>         Environment: any
>            Reporter: Sebastian Annies
>            Assignee: Vincent Siveton
>            Priority: Minor
>             Fix For: 2.5
>
>         Attachments: build-utils-1.0.9-SNAPSHOT.jar
>
>
> My taglet artifact has a dependency to commons-lang. But when executing the javadoc target the javadoc process complains with a ClassNotFoundException (in my case {{StringEscapeUtils}} but that doesn't matter). 
> Hmm - I had a look into the source and as far as I can see it the transitive dependencies are not resolved (only resolve is called and not resolveTransitively).
> The workaround is to specify the transitive dependencies by hand taglet definitions without {{<tagletClass>}} elements:
> {code:xml}
>      <plugin>
>         <groupId>org.apache.maven.plugins</groupId>
>         <artifactId>maven-javadoc-plugin</artifactId>
>         <configuration>
>           <taglets>
>             <taglet>
>               <tagletClass>com.coremedia.drm.javadoc.api.ExampleTaglet</tagletClass>
>               <tagletArtifact>
>                 <groupId>com.coremedia.drm.roapserver</groupId>
>                 <artifactId>build-utils</artifactId>
>                 <version>1.0.9-SNAPSHOT</version>
>               </tagletArtifact>
>             </taglet>
>             <taglet>
>               <tagletArtifact>
>                 <groupId>commons-lang</groupId>
>                 <artifactId>commons-lang</artifactId>
>                 <version>2.3</version>
>               </tagletArtifact>
>             </taglet>
>           </taglets>
>         </configuration>
>       </plugin>
> {code} 
> To reproduce remove the second {{<taglet>}} element and include an {{@api.example}} tag in one of your classes. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira