Graph Maven Plugin

Create customizable dependency graphs for Maven projects using Graphviz. The Graphviz "dot" executable needs to be installed and in your path for the plugin to produce graphs - http://www.graphviz.org/

There are free, stable, and mature, executables for Linux, Mac, Solaris, and Windows available for download from http://www.graphviz.org/

Example Graphs

  • Graph #1 shows dependencies on logging libraries used by this plugin
  • Graph #2 is the same graph drawn in FLAT mode with duplicate dependencies being displayed.
  • Graph #3 is the complete transitive dependency tree for this plugin (aka "the transitive closure")
    1. This is the default type of graph produced by the plugin when no customizations are applied.
    2. Dependences are styled according to their scope and optional settings.
  • Graph #4 is the transitive closure but with conflicts labeled via the "conflicts" option
    mvn graph:dependencies -Dgraph.conflicts=LABEL
  • Graph #5 is the transitive closure but with conflicts explicitly shown
    mvn graph:dependencies -Dgraph.conflicts=SHOW
  • The Dependency Graphs report has a more comprehensive set of examples.

Plugin Documentation

  • Plugin goals support generating a single graph, multiple graphs, and generating a report during Maven site generation.