Improve error message when plugin is not compatible with a mc version

We should have a clear message when the plugin is not compatible with a minecraft version.

[20:50:24 ERROR]: Could not pass event PlayerJoinEvent to LasersEnigma v6.25.3
java.lang.IndexOutOfBoundsException: toIndex = 2
        at java.base/java.util.AbstractList.subListRangeCheck(AbstractList.java:509) ~[?:?]
        at java.base/java.util.AbstractList.subList(AbstractList.java:499) ~[?:?]
        at LasersEnigma-6.25.3.jar/fr.skytale.itemlib.nmsversion.VersionResolver.getRealPackageName(VersionResolver.java:26) ~[LasersEnigma-6.25.3.jar:?]
        at LasersEnigma-6.25.3.jar/fr.skytale.itemlib.nmsversion.VersionResolver.getNms(VersionResolver.java:32) ~[LasersEnigma-6.25.3.jar:?]
        at LasersEnigma-6.25.3.jar/fr.skytale.itemlib.item.utils.ItemStackUtils.setCustomHead(ItemStackUtils.java:328) ~[LasersEnigma-6.25.3.jar:?]
        at LasersEnigma-6.25.3.jar/fr.skytale.itemlib.item.utils.ItemStackWrapper.setCustomHead(ItemStackWrapper.java:263) ~[LasersEnigma-6.25.3.jar:?]
        at LasersEnigma-6.25.3.jar/eu.lasersenigma.common.items.ItemsFactory.getItemStack(ItemsFactory.java:59) ~[LasersEnigma-6.25.3.jar:?]
        at LasersEnigma-6.25.3.jar/eu.lasersenigma.common.items.ItemsFactory.lambda$new$1(ItemsFactory.java:42) ~[LasersEnigma-6.25.3.jar:?]
        at java.base/java.util.stream.Collectors.lambda$uniqKeysMapAccumulator$1(Collectors.java:180) ~[?:?]
        at java.base/java.util.stream.ReduceOps$3ReducingSink.accept(ReduceOps.java:169) ~[?:?]
        at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:1024) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]
        at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]
        at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) ~[?:?]
        at LasersEnigma-6.25.3.jar/eu.lasersenigma.common.items.ItemsFactory.<init>(ItemsFactory.java:41) ~[LasersEnigma-6.25.3.jar:?]
        at LasersEnigma-6.25.3.jar/eu.lasersenigma.common.items.ItemsFactory.getInstance(ItemsFactory.java:89) ~[LasersEnigma-6.25.3.jar:?]
        at LasersEnigma-6.25.3.jar/eu.lasersenigma.common.inventory.saving.PlayerInventorySaveManager.lambda$clearMirrors$0(PlayerInventorySaveManager.java:88) ~[LasersEnigma-6.25.3.jar:?]
        at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[?:?]
        at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1708) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]
        at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) ~[?:?]
        at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) ~[?:?]
        at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]
        at java.base/java.util.stream.ReferencePipeline.forEachOrdered(ReferencePipeline.java:601) ~[?:?]
        at LasersEnigma-6.25.3.jar/eu.lasersenigma.common.inventory.saving.PlayerInventorySaveManager.clearMirrors(PlayerInventorySaveManager.java:90) ~[LasersEnigma-6.25.3.jar:?]
        at LasersEnigma-6.25.3.jar/eu.lasersenigma.common.inventory.saving.PlayerInventorySaveManager.onJoin(PlayerInventorySaveManager.java:164) ~[LasersEnigma-6.25.3.jar:?]
        at LasersEnigma-6.25.3.jar/eu.lasersenigma.player.PlayerInventoryManager.onJoin(PlayerInventoryManager.java:658) ~[LasersEnigma-6.25.3.jar:?]
        at LasersEnigma-6.25.3.jar/eu.lasersenigma.player.LEPlayer.onPlayerJoin(LEPlayer.java:450) ~[LasersEnigma-6.25.3.jar:?]
        at LasersEnigma-6.25.3.jar/eu.lasersenigma.player.listener.PlayerEventsListener.onPlayerJoinEvent(PlayerEventsListener.java:58) ~[LasersEnigma-6.25.3.jar:?]
        at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[paper-api-1.21.10-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:71) ~[paper-api-1.21.10-R0.1-SNAPSHOT.jar:?]
        at io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:131) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:628) ~[paper-api-1.21.10-R0.1-SNAPSHOT.jar:?]
        at net.minecraft.server.players.PlayerList.placeNewPlayer(PlayerList.java:236) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at net.minecraft.server.network.config.PrepareSpawnTask$Ready.spawn(PrepareSpawnTask.java:313) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at net.minecraft.server.network.config.PrepareSpawnTask.spawnPlayer(PrepareSpawnTask.java:139) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at net.minecraft.server.network.ServerConfigurationPacketListenerImpl.handleConfigurationFinished(ServerConfigurationPacketListenerImpl.java:210) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at net.minecraft.network.protocol.configuration.ServerboundFinishConfigurationPacket.handle(ServerboundFinishConfigurationPacket.java:22) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at net.minecraft.network.protocol.configuration.ServerboundFinishConfigurationPacket.handle(ServerboundFinishConfigurationPacket.java:8) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at net.minecraft.network.PacketProcessor$ListenerAndPacket.handle(PacketProcessor.java:99) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at net.minecraft.network.PacketProcessor.executeSinglePacket(PacketProcessor.java:33) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1516) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at net.minecraft.server.MinecraftServer.recordTaskExecutionTimeWhileWaiting(MinecraftServer.java:1226) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1357) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at net.minecraft.server.MinecraftServer.lambda$spin$2(MinecraftServer.java:383) ~[paper-1.21.10.jar:1.21.10-100-e8c6ba5]
        at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]****
Assignee Loading
Time tracking Loading