Quicktest: JDeps (Java Dependency Analysis Tool)

Mit Java 8 wird im bin Verzeichnis auch das JDeps Tool ausgeliefert. Dieses Tool ermöglicht eine statische Kodeanalyse von der Kommandozeile. Es kann die statischen Abhängigkeiten von Klassen und Jars aufzeigen und auch eine Abhängigkeitsgraphen generieren. So ist man dann für Java 9 vorbereitet.

Das wollen wir einmal ausprobieren. Dazu hole ich mir für mein Testprojekt erst einmal alle Jars und untersuche dann das JUnit 4.12.

Also in der pom.xml folgendes Plugin ergänze und ein „mvn package“ ausführen:

So dann haben wir diese Jars:

Wir schauen uns nun mal kurz die Onlinehilfe zu dem Tool mit jdeps -h an:

Nun öffnen wir eine Kommandozeile im Verzeichnis target/alternateLocation und führen unter Java 1.8 den folgenden Befehl aus (hier Mac OS X). Den Punkt für das aktuelle Verzeichnis nicht vergessen.

/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/bin/jdeps -dotoutput . junit-4.12.jar

Als Ergebnis erhalten wir zwei Dateien. Die summary.dot

und die unit-4.12.jar.dot mit allen Abhängigkeiten:

Das wollen wir jetzt noch graphisch darstellen:

Oder kurz:

Das Ergebnis: