55 lines
1.8 KiB
Diff
55 lines
1.8 KiB
Diff
|
From fd9c40f3f333eab91c410c02c20b7b9f7c64ebf2 Mon Sep 17 00:00:00 2001
|
||
|
From: Minecrell <dev@minecrell.net>
|
||
|
Date: Thu, 21 Sep 2017 16:33:12 +0200
|
||
|
Subject: [PATCH] Allow plugins to use SLF4J for logging
|
||
|
|
||
|
SLF4J is a commonly used abstraction for various logging frameworks
|
||
|
such as java.util.logging (JUL) or Log4j. Currently, plugins are
|
||
|
required to do all their logging using the provided JUL logger.
|
||
|
This is annoying for plugins that target multiple platforms or when
|
||
|
using libraries that log messages using SLF4J.
|
||
|
|
||
|
Expose SLF4J as optional logging API for plugins, so they can use
|
||
|
it without having to shade it in the plugin and going through
|
||
|
several layers of logging abstraction.
|
||
|
|
||
|
diff --git a/pom.xml b/pom.xml
|
||
|
index ad385f45..b83c6eb1 100644
|
||
|
--- a/pom.xml
|
||
|
+++ b/pom.xml
|
||
|
@@ -122,6 +122,14 @@
|
||
|
<scope>compile</scope>
|
||
|
</dependency>
|
||
|
|
||
|
+ <!-- Paper - Add SLF4J -->
|
||
|
+ <dependency>
|
||
|
+ <groupId>org.slf4j</groupId>
|
||
|
+ <artifactId>slf4j-api</artifactId>
|
||
|
+ <version>1.7.25</version>
|
||
|
+ <scope>compile</scope>
|
||
|
+ </dependency>
|
||
|
+
|
||
|
<!-- testing -->
|
||
|
<dependency>
|
||
|
<groupId>junit</groupId>
|
||
|
diff --git a/src/main/java/org/bukkit/plugin/Plugin.java b/src/main/java/org/bukkit/plugin/Plugin.java
|
||
|
index c4e22c62..02670254 100644
|
||
|
--- a/src/main/java/org/bukkit/plugin/Plugin.java
|
||
|
+++ b/src/main/java/org/bukkit/plugin/Plugin.java
|
||
|
@@ -157,6 +157,12 @@ public interface Plugin extends TabExecutor {
|
||
|
*/
|
||
|
public Logger getLogger();
|
||
|
|
||
|
+ // Paper start - Add SLF4J logger
|
||
|
+ default org.slf4j.Logger getSLF4JLogger() {
|
||
|
+ return org.slf4j.LoggerFactory.getLogger(getLogger().getName());
|
||
|
+ }
|
||
|
+ // Paper end
|
||
|
+
|
||
|
/**
|
||
|
* Returns the name of the plugin.
|
||
|
* <p>
|
||
|
--
|
||
|
2.14.1
|
||
|
|