Dependency Baum erstellen/analysieren

Status
Nicht offen für weitere Antworten.

kama

Top Contributor
Hallo,

ich habe mal eine Frage: Kennt irgend jemand von euch ein Framework(optimal) oder Ansätze wie man einen Dependency Baum erstellen kann und analysieren kann...(Das muss auch nicht in Java sein..kann auch in Perl, Ruby etc. sein).

wie z.B. in Maven gibt es ja so etwas bei dem Reactor Build (Multi Module Build), das aus der Angabe der Module und deren Abhängigkeiten die richtige Reihenfolge erstellt wird in der gebaut wird...

ein einfaches Beispiel:
Code:
   Module A

   Module B
     +-- Verwendet Module C

   Module C
     +-- Verwendet Module A

Ergebnis: Module A muss zuerst übersetzt werden, dann Module B und dann Module C

Vielen Dank im Voraus
Karl Heinz Marbaise
 

Wildcard

Top Contributor
Eclipse Buckminster Project
Siehe im Buckminster Guide Seite 108
Wenn es dir weniger um die Visualisierung als vielmehr darum geht das das Tool die Build Reihenfolge selbst bestimmt, nun, das macht Buckminster sowieso.
Ivy kann auch reports erstellen, die sind allerdings XML bzgw HTML Seiten ohne Graphen.
Dann bleibt noch die Möglichkeit ein beliebiges Format zu verwenden und selbst mit zB GraphViz zu visualisieren.
 

kama

Top Contributor
Hallo,
zuerst einmal danke für die Antwort....nach einigem suchen habe ich genau das gefunden was ich benötige:

Java:
	public static void main(String[] args) throws CyclicDependencyException {
		Vertex a = new Vertex("A");
		Vertex b = new Vertex("B");
		Vertex c = new Vertex("C");
		Vertex d = new Vertex("D");
		Vertex e = new Vertex("E");
		Vertex f = new Vertex("F");
		
		// a -> b, c
		a.addDependency(b);
		a.addDependency(c);
		
		// e -> f
		e.addDependency(f);

		// b -> c, d, e
		b.addDependency(c);
		b.addDependency(d);
		b.addDependency(e);
		
		// f -> d
		f.addDependency(d);

		List<Vertex> vertices = new ArrayList<Vertex>();
		vertices.add(a);
		vertices.add(b);
		vertices.add(c);
		vertices.add(d);
		vertices.add(e);
		vertices.add(f);

		DirectedAcyclicGraphVerifier.topologicalSort(vertices);

		for (int i = 0; i< vertices.size(); i++) {
			Vertex v = vertices.get(i);
			System.out.print(v.getName());
			if (v.getDependencies().size() > 0) {
				System.out.print(" -> ");
				List<Vertex> depList = v.getDependencies();
				for (Iterator iterator = depList.iterator(); iterator.hasNext();) {
					Vertex vertex = (Vertex) iterator.next();
					System.out.print(vertex.getName());
					if (iterator.hasNext()) {
						System.out.print(",");
					}
				}
			}
			System.out.println("");
		}
		
		System.out.println(" ----- ");
		for (Vertex v : vertices) {
			System.out.print(v.getName());
			if (v.getDependencies().size() > 0) {
				System.out.print(" -> ");
				List<Vertex> depList = v.getDependencies();
				for (Iterator iterator = depList.iterator(); iterator.hasNext();) {
					Vertex vertex = (Vertex) iterator.next();
					System.out.print(vertex.getName());
					if (iterator.hasNext()) {
						System.out.print(",");
					}
				}
			}
			System.out.println("");
		}
	}
Es gibt ein Framework namens "excalibur-fortress" und das habe ich als Dependency mit Maven in der Version 1.0 eingebunden....und dort gibt es entsprechende Klassen (Vertex etc.) und mithilfe der topologischen Sortierung erhalte ich genau das was ich möchte....

Es gibt auch noch ein Unix Progrämmchen namens tsort was genau das macht...aber die obige Variante war mir lieber...


Hier die Maven dependency dazu:
Code:
		<dependency>
			<groupId>excalibur-fortress</groupId>
			<artifactId>excalibur-fortress</artifactId>
			<version>1.0</version>
		</dependency>

Vielen Dank.
MfG
Karl Heinz Marbaise
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Dependency Injection für Baum-Einträge Allgemeine Java-Themen 9
L Guice Dependency Injection Allgemeine Java-Themen 0
RalleYTN Java 9 Module mit Dependency auf Pre-Java 9 JARS Allgemeine Java-Themen 2
L Eigene Dependency Injections definieren? Allgemeine Java-Themen 4
M Maven Dependency aus Projekt nicht aus Repo Allgemeine Java-Themen 3
A Best Practice Unterschied zwischen einer sauberen Dependency Injection und einer statischen Klasse Allgemeine Java-Themen 5
T GUICE- Dependency Injection- WANN nutze ich Providers? Allgemeine Java-Themen 2
S Suche Dependency Injection Container Allgemeine Java-Themen 6
D Frage zu Dependency Injection (mit Framework) Allgemeine Java-Themen 3
K Dependency Walker für Java? Allgemeine Java-Themen 5
E XML - Datei Darstellung in IntelliJ als Baum Allgemeine Java-Themen 2
Karl_Der_Nette_Anfänger Hat wer ne Lösung für verknüpfte Postleitzahlen? (Baum/Wurzel Struktur) Allgemeine Java-Themen 11
D 2,3-Baum rekursiv erstellen Allgemeine Java-Themen 20
D Datentypen 2-3 Baum erstellen mit geordnetem int-array Allgemeine Java-Themen 0
M Iterator für trinären Baum Allgemeine Java-Themen 0
N Rekursiv Höhe Baum Allgemeine Java-Themen 3
D Baum zeichnen hilfe Allgemeine Java-Themen 4
D if - else Baum vereinfachen Allgemeine Java-Themen 4
A AVL-Baum - Testen ob einer vorliegt Allgemeine Java-Themen 4
M Eclipse Stackoverflow beim Einlesen von großen Bilder in kd Baum Allgemeine Java-Themen 15
G Datentypen TreeMap nach Color sortiert (kd-Baum) Allgemeine Java-Themen 8
M Baum nach Stack plus Objektkonvertierung Allgemeine Java-Themen 5
S Baum mit vordefinierten Werten befüllen Allgemeine Java-Themen 2
D Datenstruktur für Hierarchie/Baum mit Tiefe 3 Allgemeine Java-Themen 8
D Rot-Schwart-Baum denkfehler im code? Allgemeine Java-Themen 6
M Baum Allgemeine Java-Themen 3
J Baum mit Adjazensmatrix Allgemeine Java-Themen 8
MQue Tidy HTML baum durchlaufen Allgemeine Java-Themen 5
C Breitendurchlauf Baum. Vorgehen unklar. Allgemeine Java-Themen 23
C Fehler im Quellcode. Suche in einem Baum Allgemeine Java-Themen 3
R Daten aus Baum entsprechend in jTree einfuegen Allgemeine Java-Themen 2
C Daten möglichst schnell einem Baum zuordnen Allgemeine Java-Themen 2
S Datenstruktur für einen Baum Allgemeine Java-Themen 5
N Baum aus Datei laden. Allgemeine Java-Themen 3
Zrebna Testkonzept erstellen - Verständnisschwierigkeiten Allgemeine Java-Themen 6
dokan wie kann ich eine funktionierende Suchleiste erstellen Allgemeine Java-Themen 1
Thomasneuling Java Jar datei erstellen, von Projekt, dass auch Javafx Dateien, FXML Dateien und CSS Dateien, sowie Bilder enthält? Allgemeine Java-Themen 14
berserkerdq2 SceneBuilder GUI erstellt, nun muss ich noch ein Polygon erstellen, ist die Connection möglich? Allgemeine Java-Themen 3
berserkerdq2 Was heißt es mit FXML Listener zu setzen ind Buttons zu erstellen? Allgemeine Java-Themen 6
C Probleme beim Erstellen eines runnable-jar files Allgemeine Java-Themen 1
D Open Source Library zum erstellen von PDFs Allgemeine Java-Themen 1
A Java Programm erstellen hilfe Allgemeine Java-Themen 10
J Power Point erstellen inklusive Diagramm Allgemeine Java-Themen 12
F IDEA IntelliJ Java Songliste erstellen Allgemeine Java-Themen 6
N Tree erstellen Allgemeine Java-Themen 8
berserkerdq2 Threads, wie genau läuft das in Java ab? (Ich kann Threads erstellen und nutzen, nur das Verständnis) Allgemeine Java-Themen 6
berserkerdq2 Kann keine Labels erstellen, was ist hier syntaktisch falsch Allgemeine Java-Themen 5
_user_q Verknüpfung einer .jar-Datei (liegt z. B. auf dem Desktop) im Autostart-Ordner erstellen? Allgemeine Java-Themen 20
stormyark Problem beim Klassen erstellen Allgemeine Java-Themen 1
A Trace-Tabelle erstellen Allgemeine Java-Themen 3
M Excel Datei Erstellen Allgemeine Java-Themen 2
OnDemand Erstellen von Quartz Jobs pro Aufgabe oder zusammenfassen Allgemeine Java-Themen 7
H Matrix ohne Array erstellen Allgemeine Java-Themen 9
R Geometry erstellen die abhängig von Variablen ist Allgemeine Java-Themen 6
Gaudimagspam Skip Liste erstellen in Java Allgemeine Java-Themen 3
Avalon DTO aus mehrere Entitäten erstellen Allgemeine Java-Themen 5
Kirby.exe Distanz Map für die Distanztransformation erstellen Allgemeine Java-Themen 1
Avalon Data Transfer Objekte aus Datenbank erstellen Allgemeine Java-Themen 8
M Registry Autostart Eintrag mit Java erstellen (über Windows cmd) Allgemeine Java-Themen 7
B .txt Datei erstellen und auslesen bzw. schreiben Allgemeine Java-Themen 6
M Java 2D Array für ein Grid erstellen ? Allgemeine Java-Themen 2
B Datei/Ordner auf Server zugreifen/erstellen Allgemeine Java-Themen 2
T Objekt mit String und Int aus TxT Datei erstellen Allgemeine Java-Themen 23
M Rectangle mit Java erstellen? Allgemeine Java-Themen 9
G Fläche erstellen mit Entfernungen Allgemeine Java-Themen 1
E Eigenen "Aufzählungstyp" erstellen - mit enum ? Allgemeine Java-Themen 18
T Multithreading: Wie viele Threads sollte ich erstellen? Allgemeine Java-Themen 12
B Rangliste erstellen Allgemeine Java-Themen 13
L SQL Datei in Eclipse erstellen Allgemeine Java-Themen 3
J Datenstruktur für eine Map erstellen Allgemeine Java-Themen 2
J File in Package erstellen & lesen mit Programmstart in externe Projekt Allgemeine Java-Themen 3
E Erstellen einer Liste mit einer maximalen Menge an Elementen Allgemeine Java-Themen 13
E Ts3API Subchannel erstellen und rein moven !! Allgemeine Java-Themen 0
J Eigene Api erstellen und dann auch verwenden - Ordnerstruktur Allgemeine Java-Themen 1
S GetMethode erstellen mit Hilfe von Parametern Allgemeine Java-Themen 9
T 2D-Grafik Chart als Image erstellen Allgemeine Java-Themen 3
I Fehler beim Ant-Package erstellen mit Java 9 Allgemeine Java-Themen 1
N Bei Mouse Events nicht mehrere Objekte erstellen Allgemeine Java-Themen 13
S Compiler-Fehler IntelliJ Projektdatei lässt sich nicht erstellen. Allgemeine Java-Themen 15
M 2D Array mit unterschiedlichen Längen erstellen und befüllen Allgemeine Java-Themen 11
E Swing Buttons auf knopfdruck(anderer Button) erstellen Allgemeine Java-Themen 6
S TestNG Eclipse: Reporting erstellen/ verändern Allgemeine Java-Themen 0
F .jar erstellen und starten Allgemeine Java-Themen 15
M Array aus Thread Objekten erstellen Allgemeine Java-Themen 2
N 1000 MQTT Messages die Sekunde - 1000 Threads erstellen ? Allgemeine Java-Themen 10
Tommy Nightmare Klassen Globale Klassen erstellen Allgemeine Java-Themen 7
K Datei (CSV-ähnlich) in Java einlesen & mit teil der Daten Graphen erstellen Allgemeine Java-Themen 9
S Maven Jars dynamisch laden / Plugin-Struktur erstellen Allgemeine Java-Themen 14
T 32-Bit Applikationen mit Eclipse erstellen Allgemeine Java-Themen 4
R Input/Output RTF erstellen? Allgemeine Java-Themen 2
G Liste zwischen zwei Kalenderdaten erstellen Allgemeine Java-Themen 3
S Klassen Klassen "virtuell" erstellen Allgemeine Java-Themen 5
P mehrer Verschiedene Objekte in einer Klasse erstellen. Allgemeine Java-Themen 4
M Dokument erstellen Allgemeine Java-Themen 0
S Java API für GitHub erstellen Allgemeine Java-Themen 14
T Ant Jar Datei per Ant in Eclipse erstellen Allgemeine Java-Themen 2
4a61766120617274697374 Hintergrundjobs(tasks) in Java erstellen Allgemeine Java-Themen 3
K Eigene API erstellen? Allgemeine Java-Themen 13
N Benutzeroberfläche erstellen Allgemeine Java-Themen 5
Thallius Eigenes Message Center erstellen Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben