2 * JavaInspect - Utility to visualize java software
3 * Copyright (C) 2013-2017, Svjatoslav Agejenko, svjatoslav@svjatoslav.eu
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of version 3 of the GNU Lesser General Public License
7 * or later as published by the Free Software Foundation.
10 package eu.svjatoslav.inspector.java;
12 import eu.svjatoslav.inspector.java.structure.ClassGraph;
13 import eu.svjatoslav.inspector.java.structure.Utils;
15 import java.io.FileNotFoundException;
17 public class RenderJavaInspect {
19 private static void fullProjectExample() {
21 final ClassGraph graph = new ClassGraph();
23 // Recursively scan current directory for Java source code and attempt
24 // to detect class names from there to be added to the graph.
25 graph.addProject(".");
27 // do not show single classes with no relationships on the graph
28 graph.hideOrphanedClasses();
30 // Produce SVG image titled "JavaInspect full project.png" to the
31 // user Desktop directory.
32 graph.generateGraph("JavaInspect full project");
35 private static void handpickClassesExample() {
37 * This example demonstrates generating of class graph from hand picked
38 * classes and visualizing GraphViz itself.
42 final ClassGraph graph = new ClassGraph();
44 // Add some random object to the graph. GraphViz will detect Class from
48 // Also add some random class to the graph.
49 graph.add(Utils.class);
51 // Keep intermediary GraphViz DOT file for reference.
52 graph.setKeepDotFile(true);
54 // Produce SVG image titled "JavaInspect.svg" to the user Desktop
56 graph.generateGraph("JavaInspect");
59 public static void main(final String[] args) throws FileNotFoundException {
61 handpickClassesExample();