Command Line Reference

run from the command line:

1. Requirements:

  • Java
  • The latest version of PlantUML downloaded


:program:`java -jar planutml.jar`

Note: “plantuml.jar” must either be in your PATH or you need to specify the exact path (full location with folders/directories)

%dirpath% Path of the current file

%filename% Name of the current file

Helpful command line options


See all of the command line options available by running

java -jar plantuml.jar -help

Search path:

You can specify the java property plantuml.include.path in the command line.

For example:

java -Dplantuml.include.path="c:/mydir" -jar plantuml.jar atest1.txt

:note:`The this -D option has to put before the -jar option. -D options after the -jar option will be used to define constants within plantuml preprocessor.`

  • See all of the regular expression patterns that PlantUML uses as it parses instructions:

    java -jar plantuml.jar -pattern
  • language items and skinparams


java -jar plantuml.jar -language

Will show you all keywords, skinparameter keywords, and color names.

Command Line Options


In the midst of reorganizing these into helpful groups

-I<path to a file to include>

This is the same as using the !include directive to include a file


Extracts the PlantUML source from a .png file.


run the graphical user interface

Set the Generated Image Type


generate images using PNG format (default)


generate images using SVG format


generate images using EPS format


generate images using PDF format


generate images using VDX format


generate XMI file for class diagram


generate SCXML file for state diagram


generate HTML file for class diagram


generate images with ASCII art


generate images with ASCII art using Unicode characters


generate images using LaTeX/Tikz format


generate images using LaTeX/Tikz format without preamble


output preprocessor text of diagrams

File Locations (input and output)

-o[utput] “dir”

generate images in the specified directory


recurse through directories


include file as if ‘!include file’ were used

-I<file pattern>

include files with pattern

-e[xclude] <pattern>

exclude files that match the provided pattern


Skip PNG files that don’t need to be regenerated


allow to overwrite read only files


use stdin for PlantUML source and stdout for PNG/SVG/EPS generation

Additional Information In Files



set a preprocessing variable as if ‘!define VAR1 value’ were used


set a skin parameter as if ‘skinparam param1 value’ were used

-charset <xxx>

use a specific charset (default is UTF-8)


retrieve PlantUML sources from PNG images


NOT export metadata in PNG/SVG generated files


have log information


NOT print error message into the console


generate intermediate svek files

-encodesprite 4|8|16[z] “file”

encode a sprite at gray level (z for compression) from an image

-computeurl | -encodeurl

compute the encoded URL of a PlantUML source file


retrieve the PlantUML source from an encoded URL

-pipeimageindex <N>

generate the Nth image with pipe option


extract PlantUML Standard Library into stdlib folder

-filename <a filename>

“example.puml” To override %filename% variable

PlantUML Configuration or Syntax


move options about syntax into a different grouping


test the installation of graphviz

-graphvizdot <executable file>

specify dot executable


check if a newer version is available for download


report any syntax error from standard input without generating images


check the syntax of files without generating images


stop processing as soon as a syntax error in diagram occurs


do a first syntax check before processing files, to fail even faster

Statistics and Performance


print the duration of complete diagrams processing

-nbthread <N>

use (N) threads for processing

-nbthread auto

use 8 threads for processing

-timeout <N>

Processing timeout in (N) seconds. Defaults to 15 minutes (900 seconds).


enable statistics computation


disable statistics computation (default)


output general statistics in file plantuml-stats.html


output general statistics in file plantuml-stats.xml


generate statistics on the fly rather than at the end


continuously print statistics about usage


display a splash screen with some progress bar


display a textual progress bar in console