mirror of
https://github.com/PaperMC/Paper.git
synced 2024-09-07 04:18:09 +02:00
This simply provides the base API to create the objects. Further commits will come that adds adds usage of this API to existing GameProfile based API's, as well as new API's.
52 lines
2.0 KiB
Diff
52 lines
2.0 KiB
Diff
From 5780ce5c1c883e145098b9357bb43ecfcd836df2 Mon Sep 17 00:00:00 2001
|
|
From: Minecrell <dev@minecrell.net>
|
|
Date: Mon, 18 Sep 2017 12:00:03 +0200
|
|
Subject: [PATCH] Use Log4j IOStreams to redirect System.out/err to logger
|
|
|
|
Log4j2 provides an optimized implementation of PrintStream that
|
|
redirects its output to a logger. Use it instead of a custom
|
|
implementation for minor performance improvements and some fixes.
|
|
|
|
With the old implementation, each call to System.print()
|
|
results in a separate line, even though it should not result in
|
|
a line break. Log4j's implementation handles it correctly.
|
|
|
|
diff --git a/pom.xml b/pom.xml
|
|
index 42f2a99ab..9ce02242e 100644
|
|
--- a/pom.xml
|
|
+++ b/pom.xml
|
|
@@ -97,6 +97,13 @@
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
|
|
+ <!-- Paper - Add additional Log4J dependencies -->
|
|
+ <dependency>
|
|
+ <groupId>org.apache.logging.log4j</groupId>
|
|
+ <artifactId>log4j-iostreams</artifactId>
|
|
+ <version>2.8.1</version>
|
|
+ </dependency>
|
|
+
|
|
<!-- testing -->
|
|
<dependency>
|
|
<groupId>junit</groupId>
|
|
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
|
|
index b3f1aa999..854455711 100644
|
|
--- a/src/main/java/net/minecraft/server/DedicatedServer.java
|
|
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java
|
|
@@ -129,8 +129,10 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
|
|
*/
|
|
// Paper end
|
|
|
|
- System.setOut(new PrintStream(new LoggerOutputStream(logger, Level.INFO), true));
|
|
- System.setErr(new PrintStream(new LoggerOutputStream(logger, Level.WARN), true));
|
|
+ // Paper start - Use Log4j IOStreams
|
|
+ System.setOut(org.apache.logging.log4j.io.IoBuilder.forLogger(logger).setLevel(Level.INFO).buildPrintStream());
|
|
+ System.setErr(org.apache.logging.log4j.io.IoBuilder.forLogger(logger).setLevel(Level.WARN).buildPrintStream());
|
|
+ // Paper end
|
|
// CraftBukkit end
|
|
|
|
thread.setDaemon(true);
|
|
--
|
|
2.15.1
|
|
|