"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
-<!-- 2022-02-20 Sun 20:27 -->
+<!-- 2022-07-13 Wed 04:26 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>JavaInspect - Utility to visualize java software</title>
-<meta name="generator" content="Org mode" />
<meta name="author" content="Svjatoslav Agejenko" />
-<style type="text/css">
- <!--/*--><![CDATA[/*><!--*/
+<meta name="generator" content="Org Mode" />
+<style>
+ #content { max-width: 60em; margin: auto; }
.title { text-align: center;
margin-bottom: .2em; }
.subtitle { text-align: center;
#postamble p, #preamble p { font-size: 90%; margin: .2em; }
p.verse { margin-left: 3%; }
pre {
- border: 1px solid #ccc;
- box-shadow: 3px 3px 3px #eee;
+ border: 1px solid #e6e6e6;
+ border-radius: 3px;
+ background-color: #f2f2f2;
padding: 8pt;
font-family: monospace;
overflow: auto;
pre.src {
position: relative;
overflow: auto;
- padding-top: 1.2em;
}
pre.src:before {
display: none;
position: absolute;
- background-color: white;
- top: -10px;
- right: 10px;
+ top: -8px;
+ right: 12px;
padding: 3px;
- border: 1px solid black;
+ color: #555;
+ background-color: #f2f2f299;
}
pre.src:hover:before { display: inline; margin-top: 14px;}
/* Languages per Org manual */
pre.src-asymptote:before { content: 'Asymptote'; }
pre.src-awk:before { content: 'Awk'; }
+ pre.src-authinfo::before { content: 'Authinfo'; }
pre.src-C:before { content: 'C'; }
/* pre.src-C++ doesn't work in CSS */
pre.src-clojure:before { content: 'Clojure'; }
{ font-size: 10px; font-weight: bold; white-space: nowrap; }
.org-info-js_search-highlight
{ background-color: #ffff00; color: #000000; font-weight: bold; }
- .org-svg { width: 90%; }
- /*]]>*/-->
+ .org-svg { }
</style>
<link href="https://bootswatch.com/3/darkly/bootstrap.min.css" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
pre {background-color: #111; color: #ccc;}
</style>
<link rel="stylesheet" type="text/css" href="https://thomasf.github.io/solarized-css/solarized-dark.min.css" />
-<script type="text/javascript">
-// @license magnet:?xt=urn:btih:e95b018ef3580986a04669f1b5879592219e2a7a&dn=public-domain.txt Public Domain
-<!--/*--><![CDATA[/*><!--*/
- function CodeHighlightOn(elem, id)
- {
- var target = document.getElementById(id);
- if(null != target) {
- elem.classList.add("code-highlighted");
- target.classList.add("code-highlighted");
- }
- }
- function CodeHighlightOff(elem, id)
- {
- var target = document.getElementById(id);
- if(null != target) {
- elem.classList.remove("code-highlighted");
- target.classList.remove("code-highlighted");
- }
- }
- /*]]>*///-->
-// @license-end
-</script>
</head>
<body>
-<div id="content">
+<div id="content" class="content">
<h1 class="title">JavaInspect - Utility to visualize java software</h1>
-<div id="table-of-contents">
+<div id="table-of-contents" role="doc-toc">
<h2>Table of Contents</h2>
-<div id="text-table-of-contents">
+<div id="text-table-of-contents" role="doc-toc">
<ul>
-<li><a href="#orga6751f6">1. General</a>
+<li><a href="#org6c08335">1. General</a>
<ul>
-<li><a href="#org926416f">1.1. Source code</a></li>
+<li><a href="#org1f40be1">1.1. Source code</a></li>
</ul>
</li>
-<li><a href="#org65fe059">2. Goal and operating principle</a></li>
-<li><a href="#org7fe659d">3. Example graphs</a></li>
-<li><a href="#org163c1cb">4. Installation</a></li>
-<li><a href="#orgaa497bf">5. Usage</a>
+<li><a href="#org05e5b28">2. Goal and operating principle</a></li>
+<li><a href="#org3ca1849">3. Example graphs</a></li>
+<li><a href="#orga20e9d8">4. Installation</a></li>
+<li><a href="#orgf9f5b99">5. Usage</a>
<ul>
-<li><a href="#org68d4e58">5.1. Usage as commandline utility</a>
+<li><a href="#org952985c">5.1. Usage as commandline utility</a>
<ul>
-<li><a href="#org4c2e5f8">5.1.1. Available commandline arguments</a></li>
-<li><a href="#orgceb0cbf">5.1.2. Specifying classes to render</a></li>
+<li><a href="#org78673fb">5.1.1. Available commandline arguments</a></li>
+<li><a href="#orgbf7fb2b">5.1.2. Specifying classes to render</a></li>
</ul>
</li>
-<li><a href="#org8037e80">5.2. Usage via Java API</a>
+<li><a href="#orgc792989">5.2. Usage via Java API</a>
<ul>
-<li><a href="#org56db96c">5.2.1. Example 1: individually picked objects</a></li>
-<li><a href="#org419624a">5.2.2. Example 2: GraphViz embedded in another project</a></li>
-<li><a href="#orgdf4f0b1">5.2.3. Embedding JavaInspect in your Maven project</a></li>
+<li><a href="#org68fe457">5.2.1. Example 1: individually picked objects</a></li>
+<li><a href="#orge4c6237">5.2.2. Example 2: GraphViz embedded in another project</a></li>
+<li><a href="#org851b3a6">5.2.3. Embedding JavaInspect in your Maven project</a></li>
</ul>
</li>
</ul>
</li>
-<li><a href="#org556c7e2">6. TO DO</a></li>
-<li><a href="#orgf7baf29">7. See also</a></li>
+<li><a href="#orgdb7d308">6. TO DO</a></li>
+<li><a href="#org30b046f">7. See also</a></li>
</ul>
</div>
</div>
-<div id="outline-container-orga6751f6" class="outline-2">
-<h2 id="orga6751f6"><span class="section-number-2">1</span> General</h2>
+<div id="outline-container-org6c08335" class="outline-2">
+<h2 id="org6c08335"><span class="section-number-2">1.</span> General</h2>
<div class="outline-text-2" id="text-1">
<ul class="org-ul">
<li>This program is free software: you can redistribute it and/or modify
</ul>
</div>
-<div id="outline-container-org926416f" class="outline-3">
-<h3 id="org926416f"><span class="section-number-3">1.1</span> Source code</h3>
+<div id="outline-container-org1f40be1" class="outline-3">
+<h3 id="org1f40be1"><span class="section-number-3">1.1.</span> Source code</h3>
<div class="outline-text-3" id="text-1-1">
<ul class="org-ul">
<li><a href="https://www2.svjatoslav.eu/gitweb/?p=javainspect.git;a=snapshot;h=HEAD;sf=tgz">Download latest snapshot in TAR GZ format</a></li>
</div>
</div>
-<div id="outline-container-org65fe059" class="outline-2">
-<h2 id="org65fe059"><span class="section-number-2">2</span> Goal and operating principle</h2>
+<div id="outline-container-org05e5b28" class="outline-2">
+<h2 id="org05e5b28"><span class="section-number-2">2.</span> Goal and operating principle</h2>
<div class="outline-text-2" id="text-2">
<p>
Goal: simplify/speed up understanding the computer program code by
</p>
<p>
-JavaInspect can be used as a <a href="#org68d4e58">standalone commandline utility</a> as well as
-<a href="#org8037e80">java library</a>. JavaInspect uses primarily Java built-in reflection to
+JavaInspect can be used as a <a href="#org952985c">standalone commandline utility</a> as well as
+<a href="#orgc792989">java library</a>. JavaInspect uses primarily Java built-in reflection to
discover and visualize any part of Java program.
</p>
<p>
JavaInspect currently has no graphical user interface, configuration
files, embedded scripting support, direct Maven, Gradle or Ant
-integration. See <a href="#orgaa497bf">usage</a> to learn how to instuct Javainspect what to do.
+integration. See <a href="#orgf9f5b99">usage</a> to learn how to instuct Javainspect what to do.
</p>
<p>
</div>
</div>
-<div id="outline-container-org7fe659d" class="outline-2">
-<h2 id="org7fe659d"><span class="section-number-2">3</span> Example graphs</h2>
+<div id="outline-container-org3ca1849" class="outline-2">
+<h2 id="org3ca1849"><span class="section-number-2">3.</span> Example graphs</h2>
<div class="outline-text-2" id="text-3">
<ul class="org-ul">
<li><p>
</p>
-<div id="org5c02965" class="figure">
+<div id="orgb13f634" class="figure">
<p><a href="example.png"><img src="example-thumbnail.png" alt="example-thumbnail.png" /></a>
</p>
</div>
</p>
-<div id="org32c854a" class="figure">
+<div id="orgdad6849" class="figure">
<p><img src="legend.png" alt="legend.png" />
</p>
</div></li>
</div>
</div>
-<div id="outline-container-org163c1cb" class="outline-2">
-<h2 id="org163c1cb"><span class="section-number-2">4</span> Installation</h2>
+<div id="outline-container-orga20e9d8" class="outline-2">
+<h2 id="orga20e9d8"><span class="section-number-2">4.</span> Installation</h2>
<div class="outline-text-2" id="text-4">
<p>
<a href="http://www.graphviz.org/">GraphViz</a> - shall be installed on the computer.
<p>
To use JavaInspect via Java API, no further installation is
needed. JavaInspect will be embedded into your project as dependency.
-This is described in <a href="#org8037e80">usage via Java API</a>. It will expect GraphViz to be
+This is described in <a href="#orgc792989">usage via Java API</a>. It will expect GraphViz to be
available in the system.
</p>
<p>
To use JavaInspect as a commandline tool, JavaInspect source
-repository has to be cloned locally: See <a href="#org926416f">Source code</a>.
+repository has to be cloned locally: See <a href="#org1f40be1">Source code</a>.
</p>
<p>
</div>
</div>
-<div id="outline-container-orgaa497bf" class="outline-2">
-<h2 id="orgaa497bf"><span class="section-number-2">5</span> Usage</h2>
+<div id="outline-container-orgf9f5b99" class="outline-2">
+<h2 id="orgf9f5b99"><span class="section-number-2">5.</span> Usage</h2>
<div class="outline-text-2" id="text-5">
<p>
JavaInspect can be controlled in 2 different ways:
</p>
<ul class="org-ul">
-<li><a href="#org68d4e58">as standalone commandline utility</a></li>
-<li><a href="#org8037e80">as embedded Java library via Java API</a></li>
+<li><a href="#org952985c">as standalone commandline utility</a></li>
+<li><a href="#orgc792989">as embedded Java library via Java API</a></li>
</ul>
</div>
-<div id="outline-container-org68d4e58" class="outline-3">
-<h3 id="org68d4e58"><span class="section-number-3">5.1</span> Usage as commandline utility</h3>
+<div id="outline-container-org952985c" class="outline-3">
+<h3 id="org952985c"><span class="section-number-3">5.1.</span> Usage as commandline utility</h3>
<div class="outline-text-3" id="text-5-1">
</div>
-<div id="outline-container-org4c2e5f8" class="outline-4">
-<h4 id="org4c2e5f8"><span class="section-number-4">5.1.1</span> Available commandline arguments</h4>
+<div id="outline-container-org78673fb" class="outline-4">
+<h4 id="org78673fb"><span class="section-number-4">5.1.1.</span> Available commandline arguments</h4>
<div class="outline-text-4" id="text-5-1-1">
<p class="verse">
-j (existing files)…<br />
</p>
</div>
</div>
-<div id="outline-container-orgceb0cbf" class="outline-4">
-<h4 id="orgceb0cbf"><span class="section-number-4">5.1.2</span> Specifying classes to render</h4>
+<div id="outline-container-orgbf7fb2b" class="outline-4">
+<h4 id="orgbf7fb2b"><span class="section-number-4">5.1.2.</span> Specifying classes to render</h4>
<div class="outline-text-4" id="text-5-1-2">
<p>
Normal Java application has immense complexity. In addition to code
</div>
</div>
-<div id="outline-container-org8037e80" class="outline-3">
-<h3 id="org8037e80"><span class="section-number-3">5.2</span> Usage via Java API</h3>
+<div id="outline-container-orgc792989" class="outline-3">
+<h3 id="orgc792989"><span class="section-number-3">5.2.</span> Usage via Java API</h3>
<div class="outline-text-3" id="text-5-2">
<p>
Requires that classes to be visualised are available in the classpath.
</div>
-<div id="outline-container-org56db96c" class="outline-4">
-<h4 id="org56db96c"><span class="section-number-4">5.2.1</span> Example 1: individually picked objects</h4>
+<div id="outline-container-org68fe457" class="outline-4">
+<h4 id="org68fe457"><span class="section-number-4">5.2.1.</span> Example 1: individually picked objects</h4>
<div class="outline-text-4" id="text-5-2-1">
<p>
This example demonstrates generating of class graph from hand picked
</div>
</div>
-<div id="outline-container-org419624a" class="outline-4">
-<h4 id="org419624a"><span class="section-number-4">5.2.2</span> Example 2: GraphViz embedded in another project</h4>
+<div id="outline-container-orge4c6237" class="outline-4">
+<h4 id="orge4c6237"><span class="section-number-4">5.2.2.</span> Example 2: GraphViz embedded in another project</h4>
<div class="outline-text-4" id="text-5-2-2">
<ol class="org-ol">
<li>Download project Sixth <a href="https://www2.svjatoslav.eu/gitweb/?p=sixth.git;a=snapshot;h=HEAD;sf=tgz">code snapshot</a>.</li>
</div>
</div>
-<div id="outline-container-orgdf4f0b1" class="outline-4">
-<h4 id="orgdf4f0b1"><span class="section-number-4">5.2.3</span> Embedding JavaInspect in your Maven project</h4>
+<div id="outline-container-org851b3a6" class="outline-4">
+<h4 id="org851b3a6"><span class="section-number-4">5.2.3.</span> Embedding JavaInspect in your Maven project</h4>
<div class="outline-text-4" id="text-5-2-3">
<p>
Declare JavaInspect as dependency:
<<span style="color: #A6E22E;">repository</span>>
<<span style="color: #A6E22E;">id</span>>svjatoslav.eu</<span style="color: #A6E22E;">id</span>>
<<span style="color: #A6E22E;">name</span>>Svjatoslav repository</<span style="color: #A6E22E;">name</span>>
- <<span style="color: #A6E22E;">url</span>>http://www2.svjatoslav.eu/maven/</<span style="color: #A6E22E;">url</span>>
+ <<span style="color: #A6E22E;">url</span>>http://www3.svjatoslav.eu/maven/</<span style="color: #A6E22E;">url</span>>
</<span style="color: #A6E22E;">repository</span>>
...
</<span style="color: #A6E22E;">repositories</span>>
</div>
</div>
-<div id="outline-container-org556c7e2" class="outline-2">
-<h2 id="org556c7e2"><span class="section-number-2">6</span> TO DO</h2>
+<div id="outline-container-orgdb7d308" class="outline-2">
+<h2 id="orgdb7d308"><span class="section-number-2">6.</span> TO DO</h2>
<div class="outline-text-2" id="text-6">
<p>
Note: Because this is side project (and I have many of them) I can
</ul>
</div>
</div>
-<div id="outline-container-orgf7baf29" class="outline-2">
-<h2 id="orgf7baf29"><span class="section-number-2">7</span> See also</h2>
+<div id="outline-container-org30b046f" class="outline-2">
+<h2 id="org30b046f"><span class="section-number-2">7.</span> See also</h2>
<div class="outline-text-2" id="text-7">
<p>
Similar or alternative solutions:
</div>
<div id="postamble" class="status">
<p class="author">Author: Svjatoslav Agejenko</p>
-<p class="date">Created: 2022-02-20 Sun 20:27</p>
+<p class="date">Created: 2022-07-13 Wed 04:26</p>
<p class="validation"><a href="https://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>