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

时间:2013-04-05 08:50:43

标签: android javadoc doclet

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

如果我理解了这个机制,我有两种方法可以告诉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 options”中输入:

-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:错误 - 无法找到doclet类com.google.doclava.Doclava 1错误“

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

我只是想创建我的项目javadoc,链接到android / java doc(对于android / java对象),并且有一个“android look& feel”。

1 个答案:

答案 0 :(得分: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>

希望它可以帮助某人