From da071ba78f0233a4d837df37251721266ff48508 Mon Sep 17 00:00:00 2001 From: Noah van der Aa Date: Sat, 12 Nov 2022 13:09:54 +0100 Subject: [PATCH] Show exception when headless JRE detection is triggered (#8559) --- patches/server/Detect-headless-JREs.patch | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/patches/server/Detect-headless-JREs.patch b/patches/server/Detect-headless-JREs.patch index 7f8639103d..cbec3434ec 100644 --- a/patches/server/Detect-headless-JREs.patch +++ b/patches/server/Detect-headless-JREs.patch @@ -16,14 +16,14 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 return RUNNING_AS_ROOT_OR_ADMIN; } + -+ public static boolean isMissingAWTDependency() { ++ public static String awtDependencyCheck() { + try { + new java.awt.Color(0); + } catch (UnsatisfiedLinkError e) { -+ return true; ++ return e.getClass().getName() + ": " + e.getMessage(); + } + -+ return false; ++ return null; + } } diff --git a/src/main/java/net/minecraft/server/Main.java b/src/main/java/net/minecraft/server/Main.java @@ -35,10 +35,13 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 } + // Paper start - Warn on headless -+ if (io.papermc.paper.util.ServerEnvironment.isMissingAWTDependency()) { ++ String awtException = io.papermc.paper.util.ServerEnvironment.awtDependencyCheck(); ++ if (awtException != null) { + Main.LOGGER.error("You are using a headless JRE distribution."); + Main.LOGGER.error("This distribution is missing certain graphic libraries that the Minecraft server needs to function."); + Main.LOGGER.error("For instructions on how to install the non-headless JRE, see https://docs.papermc.io/misc/java-install"); ++ Main.LOGGER.error(""); ++ Main.LOGGER.error(awtException); + return; + } + // Paper end