X-Git-Url: http://www2.svjatoslav.eu/gitweb/?a=blobdiff_plain;f=doc%2Findex.org;h=ac8af41e4ab9cd152a43071b6a0df0fef5eaad0f;hb=8fca62d9f6b263ff2fc41d49155afdaafc113ae1;hp=eb25b72a1dbbe3a32f0fe186d9301370bca62361;hpb=b5ce3bd895a6e6c2253e070cfce197a244c78c4c;p=javainspect.git diff --git a/doc/index.org b/doc/index.org index eb25b72..ac8af41 100644 --- a/doc/index.org +++ b/doc/index.org @@ -1,39 +1,48 @@ #+TITLE: JavaInspect - Utility to visualize java software ------ -- [[http://www2.svjatoslav.eu/gitweb/?p=javainspect.git;a=snapshot;h=HEAD;sf=tgz][download latest snapshot]] +* (document settings) :noexport: +** use dark style for TWBS-HTML exporter +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: +#+HTML_HEAD: -- This program is free software; you can redistribute it and/or modify - it under the terms of version 3 of the [[https://www.gnu.org/licenses/lgpl.html][GNU Lesser General Public - License]] or later as published by the Free Software Foundation. +* General +- This program is free software: you can redistribute it and/or modify + it under the terms of the [[https://www.gnu.org/licenses/lgpl.html][GNU Lesser General Public License]] as + published by the Free Software Foundation, either version 3 of the + License, or (at your option) any later version. - Program authors: - Svjatoslav Agejenko - - Homepage: http://svjatoslav.eu + - Homepage: https://svjatoslav.eu - Email: mailto://svjatoslav@svjatoslav.eu + - [[https://www.svjatoslav.eu/projects/][Other software projects hosted at svjatoslav.eu]] - Tony Bargnesi - GitHub fork for the project: https://github.com/abargnesi/javainspect -- [[http://www.svjatoslav.eu/programs.jsp][other applications hosted at svjatoslav.eu]] +** Source code +- [[https://www2.svjatoslav.eu/gitweb/?p=javainspect.git;a=snapshot;h=HEAD;sf=tgz][Download latest snapshot in TAR GZ format]] -* (document settings) :noexport: -** use dark style for TWBS-HTML exporter -#+HTML_HEAD: -#+HTML_HEAD: -#+HTML_HEAD: " -#+HTML_HEAD: +- [[https://www2.svjatoslav.eu/gitweb/?p=javainspect.git;a=summary][Browse Git repository online]] -* General +- Clone Git repository using command: + : git clone https://www2.svjatoslav.eu/git/javainspect.git + +* Goal and operating principle Goal: simplify/speed up understanding the computer program code by automatically visualizing its structure. -JavaInspect is a Java library/commandline utility that primarily uses -Java reflection to discover and visualize any part of Java program. +[[https://www3.svjatoslav.eu/projects/sixth-3d/graphs/][See example produced graphs]] for [[https://www3.svjatoslav.eu/projects/sixth-3d/][Sixth 3D - 3D engine project]]. + +JavaInspect can be used as a [[id:acf1896a-74b4-4914-acf6-a77075e07f25][standalone commandline utility]] as well as +[[id:bbeeffc8-3767-440d-8d93-ec9124dd60ee][java library]]. JavaInspect uses primarily Java built-in reflection to +discover and visualize any part of Java program. JavaInspect currently has no GUI, configuration files, embedded scripting support, direct Maven or Ant integration. See [[id:2ad2889e-6c95-4662-b3f4-2c341fc74522][usage]] to learn @@ -48,18 +57,21 @@ By default on your Desktop directory when operated in library mode or current working directory when operated as standalone commandline application. -Note: GraphViz is developed and tested so far only on GNU/Linux. +Notes: ++ JavaInspect is developed and tested so far only on GNU/Linux. ++ See: [[https://github.com/pahen/madge][Madge - similar tool for JavaScript]] * Example graphs + A very simple example: - [[file:example.png][file:example.resized.png]] + file:example.png Graph legend: file:legend.png -+ Example visualization of [[http://www2.svjatoslav.eu/gitbrowse/sixth-3d/doc/][Sixth 3D]] project: [[http://www2.svjatoslav.eu/gitbrowse/sixth-3d/doc/codeGraph/][architecture graphs]]. + ++ [[https://www3.svjatoslav.eu/projects/sixth-3d/graphs/][See example produced graphs]] for [[https://www3.svjatoslav.eu/projects/sixth-3d/][Sixth 3D - 3D engine project]]. * Usage :PROPERTIES: @@ -210,7 +222,7 @@ Result: - Generated PNG image: [[file:JavaInspect%20full%20project.png][JavaInspect full project.png]] *** example 3: GraphViz embedded in another project -1. Download project Sixth [[http://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=snapshot;h=HEAD;sf=tgz][code snapshot]]. +1. Download project Sixth [[https://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=snapshot;h=HEAD;sf=tgz][code snapshot]]. 2. Inspect and run *DataGraph.java*. *** Embedding JavaInspect in your Maven project @@ -307,7 +319,7 @@ LOT of cool ideas could be implemented. For intstance: - FEATURE: Possibility to attach to JVM using JVM agent. -- FEATURE: Possibility to inspect graphs in 3D using [[http://www2.svjatoslav.eu/gitbrowse/sixth-3d/doc/index.html][Sixth 3D engine]]. +- FEATURE: Possibility to inspect graphs in 3D using [[https://www3.svjatoslav.eu/projects/sixth-3d/][Sixth 3D engine]]. - FEATURE: Possibility to select classes/fields/values to be visualized in some graph query language. For greater flexibility in