2023-09-16 23:06:36 +02:00
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Nassim Jahnke <nassim@njahnke.dev>
Date: Wed, 16 Mar 2022 13:58:16 +0100
Subject: [PATCH] Improve java version check
Co-Authored-By: MiniDigger <admin@benndorf.dev>
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
2024-10-21 00:06:54 +02:00
index bcc9d3b1503b1be1841c9ab40e879a1cbb0549f2..224b7f5394a568a3982f1e9a554e72af969fbe43 100644
2023-09-16 23:06:36 +02:00
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
2024-08-09 22:05:50 +02:00
@@ -203,11 +203,20 @@ public class Main {
2023-09-16 23:06:36 +02:00
return;
}
2024-08-09 22:05:50 +02:00
- float javaVersion = Float.parseFloat(System.getProperty("java.class.version"));
2024-10-21 00:06:54 +02:00
- if (javaVersion > 67.0) {
- System.err.println("Unsupported Java detected (" + javaVersion + "). Only up to Java 23 is supported.");
2024-08-09 22:05:50 +02:00
- return;
+ // Paper start - Improve java version check
+ boolean skip = Boolean.getBoolean("Paper.IgnoreJavaVersion");
+ String javaVersionName = System.getProperty("java.version");
+ // J2SE SDK/JRE Version String Naming Convention
+ boolean isPreRelease = javaVersionName.contains("-");
+ if (isPreRelease) {
+ if (!skip) {
+ System.err.println("Unsupported Java detected (" + javaVersionName + "). You are running an unsupported, non official, version. Only general availability versions of Java are supported. Please update your Java version. See https://docs.papermc.io/paper/faq#unsupported-java-detected-what-do-i-do for more information.");
+ return;
+ }
+
2023-09-16 23:06:36 +02:00
+ System.err.println("Unsupported Java detected ("+ javaVersionName + "), but the check was skipped. Proceed with caution! ");
2024-08-09 22:05:50 +02:00
}
2024-01-21 12:53:04 +01:00
+ // Paper end - Improve java version check
2024-08-09 22:05:50 +02:00
2023-09-16 23:06:36 +02:00
try {
// Paper start - Handled by TerminalConsoleAppender