Ant - 构建文档

  • 简述

    文档在任何项目中都是必不可少的。文档在项目维护中起着重要作用。Java 通过使用内置的javadoc工具。Ant 通过按需生成文档使其变得更加容易。
    如您所知,javadoc 工具非常灵活并允许许多配置选项。Ant 通过 javadoc 任务公开这些配置选项。如果您不熟悉 javadoc,我们建议您从本 Java 文档教程开始。
    以下部分列出了 Ant 中最常用的 javadoc 选项。
  • 属性

    可以使用指定源sourcepath, sourcepathref或者sourcefiles.
    • sourcepath用于指向源文件的文件夹(例如src 文件夹)。
    • sourcepathref用于引用路径属性引用的路径(例如,delegates.src.dir)。
    • sourcefiles当您想将单个文件指定为逗号分隔列表时使用。
    目标路径使用指定destdir文件夹(例如 build.dir)。
    你可以过滤javadoc通过指定要包含的包名称来执行任务。这是通过使用packagenames属性,包文件的逗号分隔列表。
    您可以过滤 javadoc 进程以仅显示公共、私有、包或受保护的类和成员。这是通过使用private, public,packageprotected属性。
    您还可以通过使用相应的属性告诉 javadoc 任务包含作者和版本信息。
    您还可以使用 group 属性将包分组在一起,以便于导航。
  • 把它们放在一起

    让我们继续我们的主题Hello world传真应用程序并将文档目标添加到我们的传真应用程序项目。
    下面给出了我们项目中使用的示例 javadoc 任务。在此示例中,我们指定了要使用的 javadocsrc.dir作为源目录,和doc作为目标。
    我们还自定义了出现在 java 文档页面上的窗口标题、页眉和页脚信息。
    此外,我们创建了三个组 -
    • 一个用于我们源文件夹中的实用程序类,
    • 一个用于用户界面类,以及
    • 一个用于数据库相关类。
    您可能会注意到数据包组有两个包——faxapp.entity 和 faxapp.dao。
    
    
    <target name="generate-javadoc">
    
       <javadoc packagenames="faxapp.*" sourcepath="${src.dir}"
    
          destdir="doc" version="true" windowtitle="Fax Application">
    
          <doctitle><![CDATA[= Fax Application =]]></doctitle>
    
          <bottom>
    
             <![CDATA[Copyright © 2011. All Rights Reserved.]]>
    
          </bottom>
    
          <group title="util packages" packages="faxapp.util.*"/>
    
          <group title="web packages" packages="faxapp.web.*"/>
    
          <group title="data packages" packages="faxapp.entity.*:faxapp.dao.*"/>
    
       </javadoc>
    
       <echo message="java doc has been generated!" />
    
    </target>
    
    
    让我们执行 javadoc Ant 任务。它生成 java 文档文件并将其放置在 doc 文件夹中。
    当。。。的时候javadoc target被执行,它产生以下结果 -
    
    
    C:\>ant generate-javadoc
    
    Buildfile: C:\build.xml
    
    
    
    java doc has been generated!
    
    
    
    BUILD SUCCESSFUL
    
    Total time: 10.63 second
    
    
    java 文档文件现在存在于doc文件夹。
    通常,javadoc 文件是作为发布或包目标的一部分生成的。