Generelle Log4j.xml für alle Module

8u3631984

Bekanntes Mitglied
Hallo zusammen
ich habe ein Java Projekt mit verschiedenen Modulen. Ich habe in jedem Modul Unit Tests geschrieben. Diese werden ausgeführt. Für die Ausgabe nutze ich das Log4j Framework. Bisher habe ich in jedem Modul unter test/src/resource eine log4j.xml um die Ausgabe zu konfigurieren. Ich möchte aber für alle Test die gleich Konfiguration verwenden. Gibt es einen Platz wo ich die Konfiguration ablegen kann ?

Vielen Dank für eure Hilfe
 
Eine Idee, die mir da kommen würde, wäre:
Die geteilten Ressourcen liegen in einem separaten Verzeichnis (also z.B. ein Verzeichnis common oder so) und dieses wird jedem Modul als Source Verzeichnis hinzu gefügt.

Wie die genauen Schritte dann aussehen hängt natürlich vom Tool ab, mit dem Du das Projekt verwaltest. IntelliJ hat diesbezüglich z.B. in den Module Settings die Möglichkeit, über den Knopf Add Content Root Verzeichnisse als Source Verzeichnis hinzu zu fügen speziell für Tests des Moduls.
Solche Möglichkeiten wird bestimmt jede IDE bieten und Gradle / Maven haben das eh. Bei Maven würde mir das Maven Resource Plugin in den Sinn kommen: https://maven.apache.org/plugins/maven-resources-plugin/

Ich hoffe, ich konnte Dir damit etwas weiter helfen. Wenn Du dein konkretes Setup nennst, dann könnte man ggf. konkretere Lösungsvorschläge machen.
 
Eine Idee:
Ein Modul, wo die Konfiguration liegt als test-jar Dependencie in alle anderen Module einbinden. Das müsste eigentlich gehen. Muss man halt explizit überall ergänzen, weil test-jar Dependencies nicht transitiv sind.
 
Ersteinaml vielen Dnak für deine schnelle konkrete Antwort. Ich nutze in der Tat Intellij und Maven.

Ich hätte mir gewünscht, dass es ausreicht das log onfig File in das Parent Modul zu packen, aber das klappt leider nicht
 
Eine Idee:
Ein Modul, wo die Konfiguration liegt als test-jar Dependencie in alle anderen Module einbinden. Das müsste eigentlich gehen. Muss man halt explizit überall ergänzen, weil test-jar Dependencies nicht transitiv sind.
Super dein Tipp war klasse. Ich hatte sowieso schon eine TestModul (z.b um Testparameter bereitszustellen) da passt die Config gut rein und funktioniert auch !!
 
Kleiner Fun-Fact, heute vormittag poppte bei uns im Projekt das analoge Problem auf (wir haben es aber noch nicht umgesetzt). Den aufgrund diverser Logging-Statements die im Server sinnvoll sind werden wir gerade bei den Unit-Tests mit Log-Ausgaben vollgeschissen 🙂
 

Zurück
Oben