Gradle Test Run :test
testHelp()
summary
|
100%
successful |
standard output
plantuml - generate diagrams from plain text
Usage:
java -jar plantuml.jar [options] [file|dir]...
java -jar plantuml.jar [options] --gui
Description:
Process PlantUML sources from files, directories (optionally recursive), or stdin (-pipe).
Wildcards (for files/dirs):
* any characters except '/' and '\'
? exactly one character except '/' and '\'
** any characters across directories (recursive)
Tip: quote patterns to avoid shell expansion (e.g., "**/*.puml").
General:
General:
--author ..................... Show information about PlantUML authors
--check-graphviz ............. Check Graphviz installation
--dark-mode .................. Render diagrams in dark mode
--duration ................... Print total processing time
--gui ........................ Launch the graphical user interface
-h, --help ....................... Show help and usage information
--help-more .................. Show extended help (advanced options)
--http-server[:<port>] ....... Start internal HTTP server for rendering (default port : 8080)
--progress-bar ............... Show a textual progress bar
--splash-screen .............. Show splash screen with progress bar
-v, --verbose .................... Enable verbose logging
--version .................... Show PlantUML and Java version
Input & preprocessing:
--charset <name> ............. Use a specific input charset
--config <file> .............. Specify configuration file
-d, --define <VAR>=<value> ....... Define a preprocessing variable (equivalent to '!define <var> <value>')
--exclude <pattern> .......... Exclude input files matching the given pattern
-I, --include <file> ............. Include external file (as with '!include <file>')
-p, --pipe ....................... Read source from stdin, write result to stdout
-P, --pragma <key>=<value> ....... Set pragma (equivalent to '!pragma <key> <value>')
--skinparam <key>=<value> .... Set skin parameter (equivalent to 'skinparam <key> <value>')
--theme <name> ............... Apply a theme
Execution control:
--check-before-run ........... Pre-check syntax of all inputs and stop faster on error
--check-syntax ............... Check diagram syntax without generating images
--graphviz-timeout <seconds> Set Graphviz processing timeout (in seconds)
--ignore-startuml-filename ... Ignore '@startuml <name>' and always derive output filenames from input files
--no-error-image ............. Do not generate error images for diagrams with syntax errors
--stop-on-error .............. Stop at the first syntax error
--threads <n|auto> ........... Use <n> threads for processing (auto = available processors)
Metadata & assets:
--decode-url <string> ........ Decode a PlantUML encoded URL back to its source
--disable-metadata ........... Do not include metadata in generated files
--dot-path <path-to-dot-exe> Specify the path to the Graphviz 'dot' executable
--encode-url ................. Generate an encoded PlantUML URL from a source file
--extract-source ............. Extract embedded PlantUML source from PNG or SVG metadata
--ftp-server ................. Start a local FTP server for diagram rendering (rarely used)
--list-keywords .............. Print the list of PlantUML language keywords
--skip-fresh ................. Skip PNG/SVG files that are already up-to-date (using metadata)
--sprite <4|8|16[z]> <file> .. Encode a sprite definition from an image file
Output control:
--output-dir <dir> ........... Generate output files in the specified directory
--overwrite .................. Allow overwriting of read-only output files
Output format (choose one):
-f, --format <name> .............. Set the output format for generated diagrams
(e.g. png, svg, pdf, eps, latex, txt, utxt, obfuscate, preproc...)
Available formats:
--eps ........................ Generate images in EPS format
--html ....................... Generate HTML files for class diagrams
--latex ...................... Generate LaTeX/TikZ output
--latex-nopreamble ........... Generate LaTeX/TikZ output without preamble
--obfuscate .................. Replace text in diagrams with obfuscated strings to share diagrams safely
--pdf ........................ Generate PDF images
--png ........................ Generate PNG images (default)
--preproc .................... Generate the preprocessed source after applying !include, !define... (no rendering)
--scxml ...................... Generate SCXML files for state diagrams
--svg ........................ Generate SVG images
--txt ........................ Generate ASCII art diagrams
--utxt ....................... Generate ASCII art diagrams using Unicode characters
--vdx ........................ Generate VDX files
--xmi ........................ Generate XMI files for class diagrams
Statistics:
--disable-stats .............. Disable statistics collection (default behavior)
--enable-stats ............... Enable statistics collection
--export-stats ............... Export collected statistics to a text report and exit
--export-stats-html .......... Export collected statistics to an HTML report and exit
--html-stats ................. Output general statistics in HTML format
--loop-stats ................. Continuously print usage statistics during execution
--realtime-stats ............. Generate statistics in real time during processing
--xml-stats .................. Output general statistics in XML format
Examples:
# Process all .puml recursively
java -jar plantuml.jar "**/*.puml"
# Check syntax only (CI)
java -jar plantuml.jar --check-syntax src/diagrams
# Read from stdin and write to stdout (SVG)
cat diagram.puml | java -jar plantuml.jar --svg -pipe > out.svg
# Encode a sprite from an image
java -jar plantuml.jar --sprite 16z myicon.png
# Use a define
java -jar plantuml.jar -DAUTHOR=John diagram.puml
# Change output directory
java -jar plantuml.jar --format svg --output-dir out diagrams/
Exit codes:
0 Success
50 No file found
100 No diagram found in file(s)
200 Some diagrams have syntax errors
See also:
java -jar plantuml.jar --help-more
Documentation: https://plantuml.com