Gradle | Spring-Boot-Abhängigkeiten schließen nicht aus

7

Ich versuche log4j in einem Projekt zu arbeiten, an dem ich gerade arbeite. Ich habe die relevanten log4j-Abhängigkeiten in build.gradle hinzugefügt und die Spring-Boot-Starter-Protokollierung ausgeschlossen, damit sie funktionieren kann.

Das hat gut geklappt, als ich Maven als Build-Tool benutzt habe, aber sobald ich zu Gradle gewechselt habe, funktioniert es überhaupt nicht mehr (abgesehen von der Protokollierung vom Spring-Boot-Starter). Hier sind die Abhängigkeiten in meinem Build.gradle

%Vor%

Aber wie Sie im Abhängigkeitsbaum deutlich sehen können, ist spring-boot-starter-logging immer noch da. Ich vermute, dass dies das Problem ist, warum die Protokollierung nicht funktioniert.

Hier ist der Abhängigkeitsbaum:

%Vor%

Hier ist meine log4j.properties-Datei

%Vor%

AKTUALISIEREN

Ich habe es geschafft, den Ausschluss der JAR-Dateiabhängigkeit zu beheben. Aber die Protokollierung funktioniert immer noch nicht, log4j.properties ist auch in der WAR-Distribution unter Klassen.

UPDATE 02

Es funktionierte das Problem mit der my IDE (STS)

    
Switch 26.02.2015, 04:47
quelle

2 Antworten

23

Alle spring-boot-starter-* Projekte sind abhängig von spring-boot-starter project, was wiederum abhängig von spring-boot-starter-logging ist. Ich konnte diese Abhängigkeit entfernen, indem ich die folgende Zeile im Konfigurationsabschnitt hinzufügte:

%Vor%     
Mithun 26.02.2015, 06:08
quelle
1

Sie haben das Spring-Boot-Starter-Logging-Modul von Spring-Boot-Starter-Web ausgeschlossen, aber wie Sie aus dem Abhängigkeitsbaum deutlich sehen können, hat auch das Modul Spring-Boot-Starter-Data-JPA eine Abhängigkeit zu Spring-Boot-Starter-Logging, also muss man es auch von dort ausschließen (und von allen anderen Spring-Boot-Starter-Abhängigkeiten, da alle auf Spring-Boot-Starter-Logging angewiesen sind).

>     
dunni 26.02.2015 06:08
quelle