The current jGRASP releases are version 2.0.6_08 (July 23, 2021) and version 2.0.6_09 Beta 3 (November 2, 2021).
The jGRASP Plugin for IntelliJ current release is version 1.0.4 (June 1, 2021).
The jGRASP Plugin for Eclipse current release is version 1.0.0 Beta 8 (January 29, 2020).

Dialogs Freezing on MacOS Big Sur

If you are experiencing dialogs freezing on Big Sur, here is a temporary work-around:

This will of course affect other applications that use that setting. We are working on a permanent fix for the next jGRASP release.


New Features

jGRASP version 2.0.6_09 Beta 3 for MacOS has universal 64 bit Intel / Arm 64 binaries. A version bundled with OpenJDK for Arm 64 is also available.

jGRASP version 2.0.6_09 Beta adds CSD and run support for new Java 17 language features (sealed classes).

jGRASP version 2.0.6_08 Beta 2 adds CSD and run support for new Java 16 language features (records and pattern-matching instanceof).

jGRASP version 2.0.6_08 Beta supports system UI scaling on Windows and Linux (automatically integer-rounded). Previously only fonts and custom icons were scaled. Now scaling will also apply to system icons on file choosers, border thicknesses, spacing and margins, etc.

jGRASP version 2.0.6_05 Beta adds CSD, interactions, and run support for Java 15 features (text blocks).

jGRASP version 2.0.6 includes dark themes.

The jGRASP Plugin for Eclipse version 1.0.0 Beta 6 adds support for the Eclipse dark theme.


About jGRASP and jGRASP Plugins

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.8 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 plugins for IntelliJ (IDEA and Android Studio) and Eclipse add the viewer and canvas features to those IDEs. For IntelliJ, the viewers and canvas will also work with Kotlin (JVM) code.

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


Current Development

We are currently building a gdb/lldb interface for the debugger and visualizations in jGRASP, with support initially for C and C++ and the potential for other languages in the future. In parallel with this, we are developing a viewer/canvas plugin for Visual Studio Code.


Acknowledgments

The development of jGRASP plugins for Eclipse, IntelliJ, and CLion and future jGRASP C/C++ visualizations is supported by the Auburn Cyber Research Center.

Prior development of jGRASP was supported by a research grant from the National Science Foundation.

The development of GRASP, the predecessor of jGRASP, 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).