aboutsummaryrefslogtreecommitdiffstats
path: root/bukkit
diff options
context:
space:
mode:
authorKrakenied <krakenied1@gmail.com>2025-06-07 07:07:40 +0200
committerKrakenied <46192742+Krakenied@users.noreply.github.com>2025-07-29 00:06:46 +0200
commit5655db661713eac223180e619a65f0feb111def4 (patch)
tree357acc22c11ddfebee4706b1518d09b4a6005ab0 /bukkit
parent50c639f9abe01f751271d9c58c0bd185d32cd781 (diff)
Do not add Minecraft version to debug report if method does not exist
Fix for < 1.15
Diffstat (limited to 'bukkit')
-rw-r--r--bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugReportCommandHandler.java20
1 files changed, 19 insertions, 1 deletions
diff --git a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugReportCommandHandler.java b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugReportCommandHandler.java
index 838ca946..94efda58 100644
--- a/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugReportCommandHandler.java
+++ b/bukkit/src/main/java/com/leonardobishop/quests/bukkit/command/AdminDebugReportCommandHandler.java
@@ -16,12 +16,15 @@ import com.leonardobishop.quests.common.quest.Task;
import com.leonardobishop.quests.common.tasktype.TaskType;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
+import org.bukkit.Server;
import org.bukkit.command.CommandSender;
import org.jetbrains.annotations.Nullable;
import java.io.File;
import java.io.IOException;
import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
@@ -40,6 +43,16 @@ import java.util.function.Function;
public class AdminDebugReportCommandHandler implements CommandHandler {
+ private static Method getMinecraftServerMethod;
+
+ static {
+ try {
+ getMinecraftServerMethod = Server.class.getMethod("getMinecraftVersion");
+ } catch (NoSuchMethodException ignored) {
+ // introduced in one of 1.15.x versions
+ }
+ }
+
private final BukkitQuestsPlugin plugin;
private List<String> errors;
@@ -85,7 +98,12 @@ public class AdminDebugReportCommandHandler implements CommandHandler {
lines.add("Server name: " + plugin.getServer().getName());
lines.add("Server version: " + plugin.getServer().getVersion());
lines.add("Bukkit version: " + plugin.getServer().getBukkitVersion());
- lines.add("Minecraft version: " + plugin.getServer().getMinecraftVersion());
+ if (getMinecraftServerMethod != null) {
+ try {
+ lines.add("Minecraft version: " + getMinecraftServerMethod.invoke(plugin.getServer()));
+ } catch (IllegalAccessException | InvocationTargetException ignored) {
+ }
+ }
lines.add("Player count: " + plugin.getServer().getOnlinePlayers().size());
lines.add("");