diff --git a/Spigot-API-Patches/0068-Allow-plugins-to-use-SLF4J-for-logging.patch b/Spigot-API-Patches/0068-Allow-plugins-to-use-SLF4J-for-logging.patch new file mode 100644 index 000000000..b1300dd0c --- /dev/null +++ b/Spigot-API-Patches/0068-Allow-plugins-to-use-SLF4J-for-logging.patch @@ -0,0 +1,54 @@ +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 + diff --git a/Spigot-Server-Patches/0240-Include-Log4J2-SLF4J-implementation.patch b/Spigot-Server-Patches/0240-Include-Log4J2-SLF4J-implementation.patch new file mode 100644 index 000000000..2c01e2e79 --- /dev/null +++ b/Spigot-Server-Patches/0240-Include-Log4J2-SLF4J-implementation.patch @@ -0,0 +1,26 @@ +From e4b022439652ed4b044c10cadb7525671bcd54f3 Mon Sep 17 00:00:00 2001 +From: Minecrell <dev@minecrell.net> +Date: Thu, 21 Sep 2017 16:33:35 +0200 +Subject: [PATCH] Include Log4J2 SLF4J implementation + + +diff --git a/pom.xml b/pom.xml +index fa726851b..647b2c619 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -98,6 +98,12 @@ + </dependency> + + <!-- Paper - Add additional Log4J dependencies --> ++ <dependency> ++ <groupId>org.apache.logging.log4j</groupId> ++ <artifactId>log4j-slf4j-impl</artifactId> ++ <version>2.8.1</version> ++ <scope>runtime</scope> ++ </dependency> + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-iostreams</artifactId> +-- +2.14.1 +