Current jGRASP releases are versions 2.0.4_04 (February 12, 2018) and 2.0.5 Alpha 11 (March 26, 2018).
If you haven't used the viewer canvas for Java, you will find this video useful: viewer canvas.

New Releases

Version 2.0.5 Alpha 6 introduces support for the new Java 10 'var' type inference mechanism, for both CSD generation and interactions. Note that syntactically 'var' is a predefined type, so the jGRASP editor window will correctly color it as an identifier rather than a keyword.

All illegal reflective accesses have also been removed. For the current Java 10 release candidate this is not necessary, but it is unclear whether it will or will not be for the final Java 10 release. Either way, jGRASP 2.0.5 should run under Java 10 and future version of Java. There is no significant loss of functionality due to this.

Mac High Sierra Problems

Mac Java 6 does not work correctly on High Sierra. If you are encountering problems, please install Oracle JDK 8 or 9.

About jGRASP

jGRASP is a lightweight development environment, created specifically to provide automatic generation of software visualizations to improve the comprehensibility of software. jGRASP is implemented in Java, and runs on all platforms with a Java Virtual Machine (Java version 1.5 or higher). jGRASP produces Control Structure Diagrams (CSDs) for Java, C, C++, Objective-C, Python, Ada, and VHDL; Complexity Profile Graphs (CPGs) for Java and Ada; UML class diagrams for Java; and has dynamic object viewers and a viewer canvas that work in conjunction with an integrated debugger and workbench for Java. The viewers include a data structure identifier mechanism which recognizes objects that represent traditional data structures such as stacks, queues, linked lists, binary trees, and hash tables, and then displays them in an intuitive textbook-like presentation view.

jGRASP is developed by the Department of Computer Science and Software Engineering in the Samuel Ginn College of Engineering at Auburn University.

New Releases

CSD generation and syntax coloring for XML/XHTML has been added in version 2.0.4.

Version 2.0.4 introduces smooth scrolling in editing windows when using a mouse wheel or trackpad.

Version 2.0.3 supports pinch-zoom and Ctrl (or Cmd) scroll wheel zoom.

Multiple editing window tab panes (or virtual desktops, if you use them that way) are available in version 2.0.3.

Accessibility including keyboard (tab) navigation has been greatly improved in version 2.0.3. Most UI components now have useful accessible names. Work on this is continuing.

Note on Tutorials

We are in the process of updating the tutorials for jGRASP 2.0. The four updated tutorials that are available now cover most of the new features.


The development of jGRASP has been supported by a research grant from the National Science Foundation.

The development of previous versions of GRASP was supported by research grants from NASA Marshall Space Flight Center, the Department of Defense Advanced Research Projects Agency (ARPA), and the Defense Information Systems Agency (DISA).