Java Documentation using Ant Build file

Ant makes it even easier by generating the documentation on demand by using javadoc task in ANT. Documentation is very useful for any project for maintenance purpose. And it useful in to understand the code and its functionality in any project.

Ant provide JAVADOC task for creating run time documentation for a project.

Attribute for JAVADOC task in ANT-

  • sourcepath-> is used to point to the folder of the source files (e.g. src folder).
  • sourcepathref-> is used to refer a path that is referenced by the path attribute (e.g, delegates.src.dir).
  • sourcefiles-> is used when you want to specify the individual files as a comma separated list.
  • packagenames-> specifying the package names to be included.
  • destdir-> Destination path is specified.

You could filter the javadoc process to show only the public, private, package, or protected classes and members. This is achieved by using the private, public, package and protected attributes.

Let us see Hello world application. Let us add a documentation target to our Hello World application project.

Given below is an example javadoc task used in our project. In this example, we have specified the javadoc to use the src.dir as the source directory, and doc as the target.

<?xml version="1.0"?>
   <project name="Hello World" default="info" basedir=".">
    <property file=""/>
   <target name="info">
      <echo>Hello World - Welcome to Apache Ant Tutorial by Tutor ${tutor}!!!</echo>
    <target name ="makejar" description="Create a jar for the HelloWorld project">
     <mkdir dir="${build.dir}"/>
     <mkdir dir="${build.dir}/classes"/>
     <jar jarfile="${build.dir}/HelloWorld.jar" basedir="${build.dir}/classes">
        <attribute name = "Main-Class" value = "com.dineshonjava.HelloWorld"/>
    <target name = "generate-javadoc">
      <mkdir dir="doc"/>
       <javadoc packagenames="com.dineshonjava.*" sourcepath="src" 
            destdir = "doc" version = "true" windowtitle = "Hello World Application">
         <doctitle><![CDATA[= Hello World Application =]]></doctitle>
                <![CDATA[Copyright © 2016. All Rights Reserved.]]>
             <group title = "hello packages" packages = "com.dineshonjava.*"/>
      <echo message = "java doc has been generated!" />

We have also customized the window title, the header, and the footer information that appear on the java documentation pages.

Let us execute the javadoc Ant task. It generates and places the java documentation files in the doc folder.

When the javadoc target is executed, it produces the following outcome:

Java Documentation using Ant Build file

The java documentation files are now present in the doc folder.

Typically, the javadoc files are generated as a part of the release or package targets.