使用Doclava生成android项目javadoc时出错

The*_*ant 5 android javadoc doclet

我正在尝试使用javadoc和doclava生成我的android项目的文档.我下载了doclava jar,我正试图通过Project-> generate javadoc生成doc.

如果我理解了这个机制,我有两种方法可以告诉javadoc使用doclava doclet:

1)使用以下选项选择"使用自定义doclet":

Doclet名称:com.google.doclava.Doclava
Doclet路径:/full/path/of/my/doclava/dir/doclava-1.0.6.jar

2)选择"使用标准doclet",然后在"javadoc选项"中输入:

-doclet com.google.doclava.Doclava
-docletpath $ {/ full/path/of/my/doclava/dir/doclava-1.0.6.jar}

我遇到过这些问题:

  • 如果我使用第一种方法,我可以成功生成doc但似乎没有识别android类.doclava解析"import android.util.SparseArray"时出错

  • 如果我使用第二种方法,我会收到此错误:"javadoc:error - 找不到doclet类com.google.doclava.Doclava 1错误"

事实上:如果我不使用Doclava,我的文档是通过android apis的链接正确生成的.

我只是想创建我的项目javadoc与链接到android/java doc(对于android/java对象)并具有"android外观和感觉".

The*_*ant 6

对于那些对该主题感兴趣的人,我使用第一个解决方案解决了我的问题,这里是使用的蚂蚁目标:

<target name="build-javadoc">
    <echo message="Creating Javadoc.." />
    <delete dir="${doc.dir}" />
    <javadoc    access="public" 
                destdir="${doc.dir}" 
                sourcepath="${src.dir}" 
                docletpath="${doclet.dir}/doclava-1.0.6.jar" 
                classpath="lib:libs:/Users/myusername/android-sdks/platforms/android-17/android.jar" 
                packagenames="com.my.package">


        <doclet name="com.google.doclava.Doclava">
            <!-- Title -->
            <param name="-hdf" />
            <param name="project.name" />
            <param name="Project Name" />

            <!-- Overview -->
            <param name="-overview" />
            <param name="src/overview-summary.html" />

            <!-- Template -->
            <param name="-templatedir" />
            <param name="Doc/My_Template" />

            <!-- federation Java -->
            <param name="-federate" />
            <param name="JDK" />
            <param name="http://download.oracle.com/javase/6/docs/api/index.html?" />
            <param name="-federationxml" />
            <param name="JDK" />
            <param name="http://doclava.googlecode.com/svn/static/api/openjdk-6.xml" />

            <!-- federation Android-->
            <param name="-federate" />
            <param name="android" />
            <param name="http://d.android.com/reference" />
            <param name="-federationxml" />
            <param name="android" />
            <param name="http://doclava.googlecode.com/svn/static/api/android-8.xml" />

        </doclet>
    </javadoc>

    <echo message="...Done" />
</target>
Run Code Online (Sandbox Code Playgroud)

希望它可以帮助某人