[11:46:11 ERROR]: Error occurred while enabling CommandTimer v8.7.5 (Is it up to date?)
com.google.gson.JsonParseException: java.text.ParseException: Unparseable date: "Feb 8, 2023, 9:19:51 PM"
at commandtimer-java21.jar/me.playbosswar.com.utils.gson.GsonDate.deserialize(GsonDate.java:39) ~[commandtimer-java21.jar:?]
at commandtimer-java21.jar/me.playbosswar.com.utils.gson.GsonDate.deserialize(GsonDate.java:14) ~[commandtimer-java21.jar:?]
at com.google.gson.internal.bind.TreeTypeAdapter.read(TreeTypeAdapter.java:76) ~[gson-2.10.1.jar:?]
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.readIntoField(ReflectiveTypeAdapterFactory.java:212) ~[gson-2.10.1.jar:?]
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$FieldReflectionAdapter.readField(ReflectiveTypeAdapterFactory.java:433) ~[gson-2.10.1.jar:?]
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:393) ~[gson-2.10.1.jar:?]
at com.google.gson.Gson.fromJson(Gson.java:1227) ~[gson-2.10.1.jar:?]
at com.google.gson.Gson.fromJson(Gson.java:1137) ~[gson-2.10.1.jar:?]
at com.google.gson.Gson.fromJson(Gson.java:1047) ~[gson-2.10.1.jar:?]
at com.google.gson.Gson.fromJson(Gson.java:1014) ~[gson-2.10.1.jar:?]
at commandtimer-java21.jar/me.playbosswar.com.utils.gson.GsonConverter.fromJson(GsonConverter.java:29) ~[commandtimer-java21.jar:?]
at commandtimer-java21.jar/me.playbosswar.com.utils.Files.deserializeJsonFilesIntoCommandTimers(Files.java:118) ~[commandtimer-java21.jar:?]
at commandtimer-java21.jar/me.playbosswar.com.tasks.TasksManager.<init>(TasksManager.java:35) ~[commandtimer-java21.jar:?]
at commandtimer-java21.jar/me.playbosswar.com.CommandTimerPlugin.onEnable(CommandTimerPlugin.java:70) ~[commandtimer-java21.jar:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:288) ~[paper-api-1.20.6-R0.1-SNAPSHOT.jar:?]
at io.papermc.paper.plugin.manager.PaperPluginInstanceManager.enablePlugin(PaperPluginInstanceManager.java:202) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.enablePlugin(PaperPluginManagerImpl.java:109) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:520) ~[paper-api-1.20.6-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.CraftServer.enablePlugin(CraftServer.java:626) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:575) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at org.bukkit.craftbukkit.CraftServer.reload(CraftServer.java:1117) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at org.bukkit.Bukkit.reload(Bukkit.java:1023) ~[paper-api-1.20.6-R0.1-SNAPSHOT.jar:?]
at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:59) ~[paper-api-1.20.6-R0.1-SNAPSHOT.jar:?]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:165) ~[paper-api-1.20.6-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:986) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at org.bukkit.craftbukkit.CraftServer.dispatchServerCommand(CraftServer.java:971) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at net.minecraft.server.dedicated.DedicatedServer.handleConsoleInputs(DedicatedServer.java:521) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:468) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1571) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1231) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:323) ~[paper-1.20.6.jar:1.20.6-148-20f5165]
at java.base/java.lang.Thread.run(Thread.java:1570) ~[?:?]
Caused by: java.text.ParseException: Unparseable date: "Feb 8, 2023, 9:19:51 PM"
at java.base/java.text.DateFormat.parse(DateFormat.java:403) ~[?:?]
at commandtimer-java21.jar/me.playbosswar.com.utils.gson.GsonDate.deserialize(GsonDate.java:37) ~[commandtimer-java21.jar:?]
... 31 more
i have changed the source code at utils/GsonDate and it solved this problem
i do not make sure if it is the best soultion but it solved my problem.
public Date deserialize(JsonElement jsonElement, Type type,
JsonDeserializationContext jsonDeserializationContext) throws JsonParseException {
SimpleDateFormat formatter = new SimpleDateFormat(FORMAT);
try {
return formatter.parse(jsonElement.getAsString());
} catch(ParseException ex1) {
// Check if maybe it's in the old format
Bukkit.getLogger().log(Level.WARNING, "Could not parse date in new format, trying old format");
try {
SimpleDateFormat oldFormatter = new SimpleDateFormat("MMM d, yyyy, H:mm:ss a");
return oldFormatter.parse(jsonElement.getAsString());
} catch(ParseException ex2) {
Bukkit.getLogger().log(Level.WARNING, "Could not parse date in new format, trying old format");
try {
SimpleDateFormat oldFormatter = new SimpleDateFormat("MMM d, yyyy, hh:mm:ss a", Locale.ENGLISH);
return oldFormatter.parse(jsonElement.getAsString());
} catch(ParseException ex3) {
try {
SimpleDateFormat oldFormatter = new SimpleDateFormat("MMM d, yyyy, HH:mm:ss");
return oldFormatter.parse(jsonElement.getAsString());
} catch(ParseException ex4) {
throw new JsonParseException(ex4);
}
}
}
}
}
Thanks for submitting your issue. This is indeed a long standing issue where users have old date formats. A few are covered already but looks like some are still missing.
some gson issues: 2472 2689 error log
i have changed the source code at utils/GsonDate and it solved this problem i do not make sure if it is the best soultion but it solved my problem.