You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ant.apache.org by bu...@apache.org on 2009/11/29 01:53:41 UTC

DO NOT REPLY [Bug 47790] javadoc: don't create packagenames option if filesets are used

https://issues.apache.org/bugzilla/show_bug.cgi?id=47790

Robert Simpson <ro...@MailScreen.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |robs.apache4@MailScreen.com

--- Comment #4 from Robert Simpson <ro...@MailScreen.com> 2009-11-28 16:53:37 UTC ---

I ran into this issue while attempting to create a javadoc task equivalent to
the following javadoc command which generates a couple hundred documentation
files (http://code.google.com/p/filewise/source/browse/#svn/trunk/docs/api):

javadoc -private -sourcepath
/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/src -source 1.6
-J-Xmx128m -d docs/api src/com/filewise/*.java src/com/applcore/java/*/*.java

As indicated, the following seemingly equivalent task definition "does more" in
that it generates several thousand output files including doc for all of the
JDK source files (requiring the memory to be increased to -Xmx768m), which
takes about 25 minutes:

<property name="sdk.java.src" 
location="/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home/src"/>
<!-- that property is actually set differently with <whichresource> depending
on whether we're on Mac, Linux or Windows -->

<target name="doc" depends="init">
   <javadoc access="protected" destdir="docs/api" source="1.6"
maxmemory="768m">
      <packageset dir="src"/>
      <sourcepath>
         <pathelement location="${sdk.java.src}"/>
      </sourcepath>
   </javadoc>
</target>

I tried the "don't specify the sourcepath attribute at all" solution, but then
it no longer picks up the inherited comments from the JDK, which makes sense,
since there's no longer anything to indicate where the JDK source files are. 
Thus all of the "Description copied from ..." comments disappeared from the
output files.

I tried adding "-sourcepath" as an additionalparam, but strangely it thought
there was more than one "-sourcepath", until I replaced "<packageset>" with
"<fileset>".  So the final workaround for properly specifying the "-sourcepath"
parameter appears to be:

<target name="doc" depends="init">
   <javadoc access="protected" destdir="docs/api" source="1.6" maxmemory="768m"
additionalparam="-sourcepath ${sdk.java.src}">
      <fileset dir="src">
         <include name="*.java"/>
         <include name="**/*.java"/>
      </fileset>
   </javadoc>
</target>

It now generates only 250 files and runs in as little as 128m, or with more
memory takes 25 seconds rather than 25 minutes.

Rob S. http://Lnkd.com?24

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.