Writing an ANT Task

You must have something like this into your build.xml file:

<project name="OwnTaskExample" default="main" basedir=".">
<!-- task definition -->
<taskdef name="plantuml" classname="net.sourceforge.plantuml.ant.PlantUmlTask" classpath="plantuml.jar" />

<!-- process ./src files -->
<target name="main">
<plantuml dir="./src" />
</target>
</project>

The ANT task processes all .c, .h, .cpp, .tex, .html, .htm or .java of the provided directory (./src in this example). It looks for @startXXX and generates .png images.

Output Directory

You can also specify a output directory for all generated images, using output tag.
<!-- Put images in c:/images directory -->
<target name="main">
<plantuml dir="./src" output="c:/images" />
</target>

Recurse through directories

You can also use ANT standard fileset or filelist.

For example, if you want to process all java file in c:/src and subdirectories, (except files ending by Test.java), and generate images into d:/images, you can use:

<target name="main">
<plantuml output="d:/images" >
<fileset dir="c:/src">
<include name="**/*.java" />
<exclude name="**/*Test.java" />
</fileset>
</plantuml>
</target>

SVG or EPS Support

You can also use format="svg" or format="eps" in the ant task definition.

<target name="main">
<plantuml dir="./src" format="svg" />
</target>

Configuration file

You can also provide a configuration file which will be included before each diagram.

<target name="main">
<plantuml dir="./src" config="./config.cfg" />
</target>

Other parameters

Parameter Default Description
nbthread 1 Number of thread for processing
graphvizDot Path of the dot executable
format png Format for image generation: xmi, xmi:argo, xmi:start, eps, svg, txt, utxt
verbose falsetrue for more logs
config File config to include before all diagrams
charset Charset to use when reading files
output Output directory for generated images
dir Input directory to process (You can use <fileset>/<filelist> instead)
failonerror falsetrue to fail the build if some syntax error occurs
checkonly falsetrue if you want to only check the syntax of files without generating images
overwrite falsetrue if you want overwrite read-only files
enablestats falsetrue to enable statistics
htmlstats falsetrue to output general statistics in file plantuml-stats.html
xmlstats falsetrue to output general statistics in file plantuml-stats.xml
realtimestats falsetrue to generate statistics on the fly rather than at the end

You can contribute on this page by clicking here
EnglishLocal