99import org .eclipse .core .runtime .Status ;
1010import org .slf4j .ILoggerFactory ;
1111import org .slf4j .LoggerFactory ;
12+ import org .slf4j .bridge .SLF4JBridgeHandler ;
1213
1314import net .sourceforge .pmd .eclipse .plugin .PMDPlugin ;
1415
16+ import ch .qos .logback .classic .Logger ;
1517import ch .qos .logback .classic .LoggerContext ;
1618import ch .qos .logback .classic .encoder .PatternLayoutEncoder ;
1719import ch .qos .logback .classic .filter .ThresholdFilter ;
@@ -43,8 +45,12 @@ public void configureLogback() {
4345 logbackEclipseAppender .setName (PMDPlugin .PLUGIN_ID );
4446 logbackEclipseAppender .start ();
4547
46- ch . qos . logback . classic . Logger l = logbackContext .getLogger (ROOT_LOG_ID );
48+ Logger l = logbackContext .getLogger (ROOT_LOG_ID );
4749 l .addAppender (logbackEclipseAppender );
50+
51+ if (!SLF4JBridgeHandler .isInstalled ()) {
52+ SLF4JBridgeHandler .install ();
53+ }
4854 }
4955
5056 public void unconfigureLogback () {
@@ -53,8 +59,10 @@ public void unconfigureLogback() {
5359 return ;
5460 }
5561
56- ch . qos . logback . classic . Logger l = logbackContext .getLogger (ROOT_LOG_ID );
62+ Logger l = logbackContext .getLogger (ROOT_LOG_ID );
5763 l .detachAndStopAllAppenders ();
64+
65+ SLF4JBridgeHandler .uninstall ();
5866 }
5967
6068 private void configureLogs (String logFileName , String logLevel ) {
@@ -96,7 +104,7 @@ private void configureLogs(String logFileName, String logLevel) {
96104
97105 appender .start ();
98106
99- ch . qos . logback . classic . Logger rootLogger = logbackContext .getLogger (ROOT_LOG_ID );
107+ Logger rootLogger = logbackContext .getLogger (ROOT_LOG_ID );
100108 rootLogger .addAppender (appender );
101109 }
102110
@@ -106,7 +114,7 @@ public void applyLogPreferences(String logFileName, String logLevel) {
106114 return ;
107115 }
108116
109- ch . qos . logback . classic . Logger rootLogger = logbackContext .getLogger (ROOT_LOG_ID );
117+ Logger rootLogger = logbackContext .getLogger (ROOT_LOG_ID );
110118 Appender <ILoggingEvent > appender = rootLogger .getAppender (PMD_ECLIPSE_APPENDER_NAME );
111119 if (appender != null ) {
112120 rootLogger .detachAppender (appender );
0 commit comments