Skip to content

Commit 8cf5866

Browse files
committed
Remove log4j pom dependency
Note: log4j is still on the plugin requirements in order to maintain API compatibility.
1 parent 854e426 commit 8cf5866

File tree

7 files changed

+39
-15
lines changed

7 files changed

+39
-15
lines changed

ReleaseNotes.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,12 @@ This is a bugfix release.
2020
* The minimum eclipse version is now definitely Kepler (4.3) as
2121
it is declared in the market place. This is enforced via a
2222
target definition.
23+
* Usage of Log4j is deprecated and is going to be removed. Logback via slf4j is replacing it.
24+
Therefore the following methods/fields are deprecated for removal in `net.sourceforge.pmd.eclipse.runtime.preferences.IPreferences`:
25+
* `getLogLevel()`
26+
* `setLogLevel(Level)`
27+
* `LOG_LEVEL`
28+
* `net.sourceforge.pmd.eclipse.plugin.PMDPlugin#ROOT_LOG_ID`
2329

2430
### External Contributions
2531

net.sourceforge.pmd.eclipse.plugin/META-INF/MANIFEST.MF

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@ Bundle-ClassPath: target/lib/antlr-runtime.jar,
4242
target/lib/jaxb-impl.jar,
4343
target/lib/jcommander.jar,
4444
target/lib/lenses_2.13.jar,
45-
target/lib/log4j.jar,
4645
target/lib/parsers_2.13.jar,
4746
target/lib/pmd-apex-jorje-lib.jar,
4847
target/lib/pmd-apex.jar,
@@ -175,4 +174,5 @@ Export-Package: name.herlin.command,
175174
net.sourceforge.pmd.renderers,
176175
net.sourceforge.pmd.util;uses:="net.sourceforge.pmd.lang.java.ast",
177176
net.sourceforge.pmd.util.datasource
178-
Import-Package: org.slf4j
177+
Import-Package: org.apache.log4j,
178+
org.slf4j

net.sourceforge.pmd.eclipse.plugin/pom.xml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,6 @@
2020
<version>${pmd.version}</version>
2121
<type>pom</type>
2222
</dependency>
23-
<dependency>
24-
<groupId>log4j</groupId>
25-
<artifactId>log4j</artifactId>
26-
<version>1.2.17</version>
27-
</dependency>
2823
<dependency>
2924
<groupId>javax.xml.bind</groupId>
3025
<artifactId>jaxb-api</artifactId>

net.sourceforge.pmd.eclipse.plugin/src/main/java/net/sourceforge/pmd/eclipse/plugin/PMDPlugin.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,7 @@ public void start(BundleContext context) throws Exception {
240240
registerStandardRuleSets();
241241

242242
IPreferences prefs = loadPreferences();
243-
logbackConfiguration.applyLogPreferences(prefs.getLogFileName(), prefs.getLogLevel().toString());
243+
logbackConfiguration.applyLogPreferences(prefs.getLogFileName(), prefs.getLogLevelName());
244244
registerAdditionalRuleSets();
245245
fileChangeListenerEnabled(prefs.isCheckAfterSaveEnabled());
246246

@@ -551,7 +551,7 @@ public IRuleSetWriter getRuleSetWriter() {
551551
}
552552

553553
public void applyLogPreferences(IPreferences preferences) {
554-
logbackConfiguration.applyLogPreferences(preferences.getLogFileName(), preferences.getLogLevel().toString());
554+
logbackConfiguration.applyLogPreferences(preferences.getLogFileName(), preferences.getLogLevelName());
555555
}
556556

557557
/**

net.sourceforge.pmd.eclipse.plugin/src/main/java/net/sourceforge/pmd/eclipse/runtime/preferences/IPreferences.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,9 @@ public interface IPreferences {
3434
boolean REVIEW_PMD_STYLE_ENABLED_DEFAULT = true;
3535
int MIN_TILE_SIZE_DEFAULT = 25;
3636
String LOG_FILENAME_DEFAULT = System.getProperty("user.home") + "/pmd-eclipse.log";
37+
@Deprecated // use LOG_LEVEL_DEFAULT instead
3738
Level LOG_LEVEL = Level.WARN;
39+
String LOG_LEVEL_DEFAULT = "WARN";
3840

3941
// default renderer
4042
String ACTIVE_RENDERERS = "text";
@@ -198,7 +200,7 @@ public interface IPreferences {
198200
int getMinTileSize();
199201

200202
/**
201-
* Set the CPD minimul tile size
203+
* Set the CPD minimum tile size
202204
*/
203205
void setMinTileSize(int minTileSize);
204206

@@ -214,14 +216,22 @@ public interface IPreferences {
214216

215217
/**
216218
* Return the log level
219+
* @deprecated use {@link #getLogLevelName()}
217220
*/
221+
@Deprecated
218222
Level getLogLevel();
219223

224+
String getLogLevelName();
225+
220226
/**
221227
* Set the log level
228+
* @deprecated use {@link #setLogLevel(String)}
222229
*/
230+
@Deprecated
223231
void setLogLevel(Level level);
224232

233+
void setLogLevel(String level);
234+
225235
// Globally configured rules
226236

227237
// later...

net.sourceforge.pmd.eclipse.plugin/src/main/java/net/sourceforge/pmd/eclipse/runtime/preferences/impl/PreferencesImpl.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ class PreferencesImpl implements IPreferences {
4444
private boolean reviewPmdStyleEnabled;
4545
private int minTileSize;
4646
private String logFileName;
47-
private Level logLevel;
47+
private String logLevel;
4848
private boolean globalRuleManagement;
4949
private Set<String> activeRuleNames = new HashSet<String>();
5050
private Set<String> activeRendererNames = new HashSet<String>();
@@ -209,7 +209,14 @@ public String getLogFileName() {
209209
/**
210210
* @see net.sourceforge.pmd.eclipse.runtime.preferences.IPreferences#getLogLevel()
211211
*/
212+
@Deprecated
213+
@Override
212214
public Level getLogLevel() {
215+
return Level.toLevel(logLevel);
216+
}
217+
218+
@Override
219+
public String getLogLevelName() {
213220
return logLevel;
214221
}
215222

@@ -223,7 +230,14 @@ public void setLogFileName(String logFileName) {
223230
/**
224231
* @see net.sourceforge.pmd.eclipse.runtime.preferences.IPreferences#setLogLevel(org.apache.log4j.Level)
225232
*/
233+
@Deprecated
234+
@Override
226235
public void setLogLevel(Level level) {
236+
logLevel = level.toString();
237+
}
238+
239+
@Override
240+
public void setLogLevel(String level) {
227241
logLevel = level;
228242
}
229243

net.sourceforge.pmd.eclipse.plugin/src/main/java/net/sourceforge/pmd/eclipse/runtime/preferences/impl/PreferencesManagerImpl.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import java.util.Set;
2020

2121
import org.apache.commons.lang3.StringUtils;
22-
import org.apache.log4j.Level;
2322
import org.eclipse.core.resources.IProject;
2423
import org.eclipse.core.resources.IWorkspaceRoot;
2524
import org.eclipse.core.resources.ResourcesPlugin;
@@ -336,8 +335,8 @@ private void loadLogFileName() {
336335
}
337336

338337
private void loadLogLevel() {
339-
loadPreferencesStore.setDefault(LOG_LEVEL, IPreferences.LOG_LEVEL.toString());
340-
preferences.setLogLevel(Level.toLevel(loadPreferencesStore.getString(LOG_LEVEL)));
338+
loadPreferencesStore.setDefault(LOG_LEVEL, IPreferences.LOG_LEVEL_DEFAULT);
339+
preferences.setLogLevel(loadPreferencesStore.getString(LOG_LEVEL));
341340
}
342341

343342
private void loadGlobalRuleManagement() {
@@ -521,7 +520,7 @@ private void storeLogFileName() {
521520
}
522521

523522
private void storeLogLevel() {
524-
storePreferencesStore.setValue(LOG_LEVEL, preferences.getLogLevel().toString());
523+
storePreferencesStore.setValue(LOG_LEVEL, preferences.getLogLevelName());
525524
}
526525

527526
private void storePriorityDescriptors() {

0 commit comments

Comments
 (0)