You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Herve Boutemy (JIRA)" <ji...@codehaus.org> on 2011/01/02 18:36:58 UTC
[jira] Updated: (MJAVADOC-279) Javadoc plugin doesn't set
dependencies correctly when pom uses classifiers
[ http://jira.codehaus.org/browse/MJAVADOC-279?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Herve Boutemy updated MJAVADOC-279:
-----------------------------------
Description:
Create a project which has dependencies like:
{code:xml} <dependencies>
<dependency>
<groupId>com.xxx</groupId>
<artifactId>mydep</artifactId>
<version>1.3.1</version>
<classifier>core</classifier>
</dependency>
<dependency>
<groupId>com.xxx</groupId>
<artifactId>mydep</artifactId>
<version>1.3.1</version>
<classifier>util</classifier>
</dependency>
</dependencies>{code}
This will add dependencies to the javadoc options file something like this:
classpath
'C:/dev/target/classes;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-core.jar;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-core.jar'
where it should yield:
classpath
'C:/dev/target/classes;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-core.jar;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-util.jar'
i.e. the classifier for the artifacts is being ignored. This causes various dependencies to be missing from the javadoc task which will eventually fail with:
{noformat}java.lang.NullPointerException
at com.sun.tools.javadoc.TypeMaker.getType(TypeMaker.java:67)
at com.sun.tools.javadoc.TypeMaker.getType(TypeMaker.java:29)
at com.sun.tools.javadoc.ClassDocImpl.superclassType(ClassDocImpl.java:441)
at com.sun.tools.doclets.internal.toolkit.util.Util.getAllInterfaces(Util.java:386)
at com.sun.tools.doclets.internal.toolkit.util.Util.getAllInterfaces(Util.java:424)
at com.sun.tools.doclets.internal.toolkit.util.ClassTree.processType(ClassTree.java:162)
at com.sun.tools.doclets.internal.toolkit.util.ClassTree.buildTree(ClassTree.java:114)
at com.sun.tools.doclets.internal.toolkit.util.ClassTree.<init>(ClassTree.java:73)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.startGeneration(AbstractDoclet.java:104)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.start(AbstractDoclet.java:64)
at com.sun.tools.doclets.formats.html.HtmlDoclet.start(HtmlDoclet.java:42)
at com.sun.tools.doclets.standard.Standard.start(Standard.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.tools.javadoc.DocletInvoker.invoke(DocletInvoker.java:215)
at com.sun.tools.javadoc.DocletInvoker.start(DocletInvoker.java:91)
at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:340)
at com.sun.tools.javadoc.Start.begin(Start.java:128)
at com.sun.tools.javadoc.Main.execute(Main.java:41)
at com.sun.tools.javadoc.Main.main(Main.java:31){noformat}
was:
Create a project which has dependencies like:
<dependencies>
<dependency>
<groupId>com.xxx</groupId>
<artifactId>mydep</artifactId>
<version>1.3.1</version>
<classifier>core</classifier>
</dependency>
<dependency>
<groupId>com.xxx</groupId>
<artifactId>mydep</artifactId>
<version>1.3.1</version>
<classifier>util</classifier>
</dependency>
</dependencies>
This will add dependencies to the javadoc options file something like this:
classpath
'C:/dev/target/classes;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-core.jar;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-core.jar'
where it should yield:
classpath
'C:/dev/target/classes;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-core.jar;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-util.jar'
i.e. the classifier for the artifacts is being ignored. This causes various dependencies to be missing from the javadoc task which will eventually fail with:
java.lang.NullPointerException
at com.sun.tools.javadoc.TypeMaker.getType(TypeMaker.java:67)
at com.sun.tools.javadoc.TypeMaker.getType(TypeMaker.java:29)
at com.sun.tools.javadoc.ClassDocImpl.superclassType(ClassDocImpl.java:441)
at com.sun.tools.doclets.internal.toolkit.util.Util.getAllInterfaces(Util.java:386)
at com.sun.tools.doclets.internal.toolkit.util.Util.getAllInterfaces(Util.java:424)
at com.sun.tools.doclets.internal.toolkit.util.ClassTree.processType(ClassTree.java:162)
at com.sun.tools.doclets.internal.toolkit.util.ClassTree.buildTree(ClassTree.java:114)
at com.sun.tools.doclets.internal.toolkit.util.ClassTree.<init>(ClassTree.java:73)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.startGeneration(AbstractDoclet.java:104)
at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.start(AbstractDoclet.java:64)
at com.sun.tools.doclets.formats.html.HtmlDoclet.start(HtmlDoclet.java:42)
at com.sun.tools.doclets.standard.Standard.start(Standard.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.tools.javadoc.DocletInvoker.invoke(DocletInvoker.java:215)
at com.sun.tools.javadoc.DocletInvoker.start(DocletInvoker.java:91)
at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:340)
at com.sun.tools.javadoc.Start.begin(Start.java:128)
at com.sun.tools.javadoc.Main.execute(Main.java:41)
at com.sun.tools.javadoc.Main.main(Main.java:31)
> Javadoc plugin doesn't set dependencies correctly when pom uses classifiers
> ---------------------------------------------------------------------------
>
> Key: MJAVADOC-279
> URL: http://jira.codehaus.org/browse/MJAVADOC-279
> Project: Maven 2.x Javadoc Plugin
> Issue Type: Bug
> Affects Versions: 2.6.1
> Environment: Maven 2.2.1, Windows XP
> Reporter: James Nichols
> Attachments: mazix-mvn-logs.zip, mazix.zip
>
>
> Create a project which has dependencies like:
> {code:xml} <dependencies>
> <dependency>
> <groupId>com.xxx</groupId>
> <artifactId>mydep</artifactId>
> <version>1.3.1</version>
> <classifier>core</classifier>
> </dependency>
> <dependency>
> <groupId>com.xxx</groupId>
> <artifactId>mydep</artifactId>
> <version>1.3.1</version>
> <classifier>util</classifier>
> </dependency>
> </dependencies>{code}
> This will add dependencies to the javadoc options file something like this:
> classpath
> 'C:/dev/target/classes;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-core.jar;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-core.jar'
> where it should yield:
> classpath
> 'C:/dev/target/classes;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-core.jar;c:/repository/com/xxx/mydep/1.3.1/mydep-1.3.1-util.jar'
> i.e. the classifier for the artifacts is being ignored. This causes various dependencies to be missing from the javadoc task which will eventually fail with:
> {noformat}java.lang.NullPointerException
> at com.sun.tools.javadoc.TypeMaker.getType(TypeMaker.java:67)
> at com.sun.tools.javadoc.TypeMaker.getType(TypeMaker.java:29)
> at com.sun.tools.javadoc.ClassDocImpl.superclassType(ClassDocImpl.java:441)
> at com.sun.tools.doclets.internal.toolkit.util.Util.getAllInterfaces(Util.java:386)
> at com.sun.tools.doclets.internal.toolkit.util.Util.getAllInterfaces(Util.java:424)
> at com.sun.tools.doclets.internal.toolkit.util.ClassTree.processType(ClassTree.java:162)
> at com.sun.tools.doclets.internal.toolkit.util.ClassTree.buildTree(ClassTree.java:114)
> at com.sun.tools.doclets.internal.toolkit.util.ClassTree.<init>(ClassTree.java:73)
> at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.startGeneration(AbstractDoclet.java:104)
> at com.sun.tools.doclets.internal.toolkit.AbstractDoclet.start(AbstractDoclet.java:64)
> at com.sun.tools.doclets.formats.html.HtmlDoclet.start(HtmlDoclet.java:42)
> at com.sun.tools.doclets.standard.Standard.start(Standard.java:23)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at com.sun.tools.javadoc.DocletInvoker.invoke(DocletInvoker.java:215)
> at com.sun.tools.javadoc.DocletInvoker.start(DocletInvoker.java:91)
> at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:340)
> at com.sun.tools.javadoc.Start.begin(Start.java:128)
> at com.sun.tools.javadoc.Main.execute(Main.java:41)
> at com.sun.tools.javadoc.Main.main(Main.java:31){noformat}
--
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