Softwareprojekte mit überschaubarer bzw. gekapselter Funktionialität lassen sich ohne Probleme in einem Repository verwalten. Sobald jedoch mehrere Bereiche einer SW-Archtitektur tangiert werden, sollte die jeweilige Funktionalität ausgelagert werden. Das Hinzufügen mehrerer Repositories zu einem IntelliJ-Projekt erläutere ich in diesem Artikel.

Voraussetzung

Die Grundlage ist ein bereits angelegtes Projekt (Java) mit der Entwicklungsumgebung IntelliJ IDEA Community Edition v2017.3.5.

Im Menü unter File > Project Structure ist beim Erstellen des Projekts im Abschnitt Modules standardmäßig ein Modul angelegt worden.

Innerhalb eines Moduls können einzelne Ordner als Sources, Test, Resource, Test Resources oder Excluded deklariert werden. Auf der rechten Seite sind die Pfade zu den beschriebenen Ordnern aufgelistet, falls eine Zuordnung besteht.

Nun besteht die Möglichkeit, Quelldateien eines fremden Projekts einzubinden. Hierzu muss über Add Content Root das Wurzelverzeichnis eines anderen Repositories ausgewählt werden:

intellij add content rootDas Wurzelverzeichnis des gewünschten entfernten Repositories muss hier gewählt werden.

Im Anschluss sollten die Unterordner entsprechend ihres Verwendungszwecks deklariert werden:

intellij unmarkedDie Verzeichnisstruktur des soeben eingebundenen Repositories enthält Verzeichnisse, die wiederum Quellcodes, Tests und weitere Dateien enthalten.

Die Verzeichnisse werden nun entsprechend ihres Zwecks markiert:

intellij markedDie markierten Verzeichnisse sind farbig hervorgehoben.

Anpassen der Run/Debug-Konfiguration

Die Anwendung kann bekanntermaßen von den Tests separiert gebaut und ausgeführt werden. Je nach Anfangsbuchstaben der eingebundenenen Projekte werden sie von IntelliJ intern alphabetisch sortiert. Das demnach erste Projekt wird als Standard-Wurzelverzeichnis gewählt und kann zu unterwünschten Fehlern führen, beispielsweise beim Ausführen der Tests: Es wird immer der target-Ordner des Projekts als Ausgabeverzeichnis für Artefakte gewählt, das als erstes im Alphabet erscheint.

Unter Run > Edit Configurations > Defaults kann das Standardverhalten dahingehend angepasst werden, dass z.B. immer der target-Ordner des Hauptprojekts als Ausgabeverzeichnis für Artefakte gewählt wird.

Um für das Ausführen von Modultests mit JUnit sicherzugehen, dass das Hauptprojekt als Ausgabeverzeichnis gewählt wird, muss der Parameter Working Directory vom Standardwert $MODULE_WORKING_DIR$ auf den Wert $MODULE_DIR$ geändert werden:

intellij module working dirBei der Default-Konfiguration von JUnit muss der Parameter Working directory auf den Wert $MODULE_DIR$ gesetzt werden.

 

 

See also

  • Testautomatisierung (Java)

    Viele und gute Testfälle sind eine gute Voraussetzung für eine qualitativ hochwertige Software. Während eines Entwicklungsprozesses sind mit an Sicherheit grenzender Wahrscheinlichkeit jedoch die meisten Methoden, die durch die Testfälle geprüft werden, von Änderungen betroffen. Eine Automatisierung aller Testfälle ist also nicht nur wünschenswert, sondern auch wichtig, um Fehlerfortpflanzung zu vermeiden. In diesem Artikel gehe ich auf die Vorteile und Werkzeuge der Testautomatisierung ein.

  • Der MedDoser.
    MedDoser: Medikationsplan auf dem Raspberry Pi 3 (Java)

    Das Gerät MedDoser ist ein mit einem Touchscreen und weiteren Komponenten versehenes RaspberryPi, das eine Erinnerungsfunktion samt Medikationsdokumentation auf Basis eines eingescannten Medikationsplans ermöglicht und die Medikation eines Patienten visuell darstellt.

  • Indikatorenverlauf
    Masterarbeit: Berechnung von Qualitätsindikatoren

    Meine Studienlaufbahn und somit auch das Masterstudium der Fachrichtung Medizininformatik an der OTH Regensburg wird mit der Masterarbeit abgeschlossen.

    Ihr Titel lautet "Entwicklung einer datenschutzkonformen Client-Server-Infrastruktur zur Berechnung von Qualitätsindikatoren der ambulanten Versorgung in heterogenen Praxisnetzen".

    Die in diesem Rahmen entwickelte Software bietet niedergelassenen Haus- und Fachärzten die Möglichkeit, die Versorgung ihrer Patienten durch die Analyse von Qualitätsindikatoren zu verbessern.

Cookies make it easier for us to provide you with our services. With the usage of our services you permit us to use cookies.
Ok