[ http://jira.codehaus.org/browse/MSITE-432?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=231600#action_231600 ]
James Ravn commented on MSITE-432: ---------------------------------- Using <type>test-jar</type> exhibits the same exact issue in 2.2.1. The only workaround I can find is to place the test-jar dependency first - the test javadoc fails instead of the main javadoc, but maven ignores it. > Incorrect classpath is used when site plugin/phase launches javadoc command > --------------------------------------------------------------------------- > > Key: MSITE-432 > URL: http://jira.codehaus.org/browse/MSITE-432 > Project: Maven 2.x Site Plugin > Issue Type: Bug > Affects Versions: 2.0-beta-7, 2.0.1 > Environment: Maven 2.2.1 > Reporter: Chris Tait > Priority: Minor > Attachments: maven-projects.zip > > > When invoking the site plugin (with javadoc reporting enabled) for a project > that depends on both the main artifact and the tests artifact of another > project, the classpath passed to the javadoc command is incorrect. > For example: > Project A produces the following artifacts: > - ProjectA-version.jar (main artifact) > - ProjectA-version-tests.jar (test classes) > And project B has dependencies similar to this: > {code}<dependency> > <groupId>...</groupId> > <artifactId>Project1</artifactId> > <version>...</version> > </dependency> > <dependency> > <groupId>...</groupId> > <artifactId>Project1</artifactId> > <version>...</version> > <classifier>tests</classifier> > <scope>test</scope> > </dependency>{code} > Then only one of the jars is included in the classpath passed to the javadoc > command. (Normally it seems to be the main artifact, although on one of my > projects it was the tests artifact instead.) This causes lots of warnings, > or for some projects causes the build to fail. > Note that if I explicitly run the javadoc goals (i.e. "mvn javadoc:javadoc" > or "mvn javadoc:test-javadoc") then the classpath is populated correctly and > no errors are shown. It's only when the site plugin/phase launches it that > the classpath is wrong. I've also found that the order of the dependencies > within the POM file seems to make a difference in some cases. > I've attached a zip file containing two projects to reproduce this. To run > it: > # run {{mvn install}} on project1 > # run {{mvn site}} on project2 (to see the warnings) or {{mvn > javadoc:test-javadoc}} > The warning looks like this: > {code}[WARNING] Javadoc Warnings > [WARNING] > D:\code\EclipseWorkspaces_chris\PaymentCard\project3\src\main\java\repro3\MyClass3.java:3: > cannot find symbol > [WARNING] symbol : class MyClass1 > [WARNING] location: package repro1 > [WARNING] import repro1.MyClass1; > [WARNING] ^{code} -- 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