umldoclet icon indicating copy to clipboard operation
umldoclet copied to clipboard

Automatically generate PlantUML diagrams in javadoc

CI build Maven Version Javadoc

UMLDoclet

Doclet for javadoc to automatically add UML diagrams to Java documentation.

Codebeat badge Coverage Status

Generate UML diagrams

The UML Doclet uses available javadoc metadata to automatically generate the following UML diagrams and embeds them in your HTML documentation. The diagrams are embedded as clickable SVG objects by default and link to package and class documentation where available.

Package dependency diagram

The UML Doclet will warn about (and optionally fail on) cyclic package dependencies.

The dependency diagram links to package documentation containing:

Package diagram

The package diagram links to class documentation containing:

Class diagram

(These examples are from the latest UML Doclet javadoc page. Please feel free to take a look to get an idea of the final result)

Requirements

To use the UML Doclet, the following is required.

  • Javadoc version 9 or higher.
    For versions of javadoc from earlier JDKs, please use the latest 1.x UML Doclet version. If you compile your java 8 or older javadocs with a more recent JDK (Javadoc version 9 or higher), you need to use the 2.x version.
  • An installed version of graphviz, at least until pure java visualization works. Graphviz needs to be compiled with libexpat support.
  • The UML Doclet, the usage page shows how. An apache-licensed version of PlantUML is already included in the umldoclet jar.

Releases

Released versions can be found in the maven central repository or on github.

Usage

  • Please see the separate usage page on how to use the UML Doclet in your own Java projects.

Feedback

  • We welcome new issues :+1:. Please search the current issues however, otherwise you might file a duplicate.
  • Please provide an example when sending in bugs if at all possible. This will make fixing them that much easier!

Contributing

Thanks

  • First of all a big thanks to Arnaud Roques, the developer of the excellent PlantUML project without whom this project wouldn't exist! :clap:
  • And of course thank you for using UML Doclet. I hope it may be of benefit to your project!

License

  • Apache 2.0 license