ClassCastExceptions repeatedly
SlimeDog opened this issue ยท 3 comments
Type of bug
Error in console
TabList version
>version tablist
[12:21:43] [Server thread/INFO]: TabList version 5.6.9
[12:21:43] [Server thread/INFO]: An alternative tablist plugin to replace vanilla empty tab [12:21:43] [Server thread/INFO]: Author: montlikadani
Software version
>version
[12:21:24] [Server thread/INFO]: This server is running CraftBukkit version 3692-Spigot-6ad4b93-40b87e1 (MC: 1.19.4) (Implementing API version 1.19.4-R0.1-SNAPSHOT)
[12:21:24] [Server thread/INFO]: You are running the latest version
or
> version
[12:26:38 INFO]: This server is running Paper version git-Paper-466 (MC: 1.19.4) (Implementing API version 1.19.4-R0.1-SNAPSHOT) (Git: 7af4cd3)
You are running the latest version
Relevant plugins
Available on request
Console error (if applicable)
[12:10:27] [Craft Scheduler Thread - 46/WARN]: [TabList] Plugin TabList v5.6.9 generated an exception while executing task 19104
java.lang.ClassCastException: class hu.montlikadani.tablist.tablist.TabText cannot be cast to class net.minecraft.network.chat.IChatBaseComponent (hu.montlikadani.tablist.tablist.TabText is in unnamed module of loader org.bukkit.plugin.java.PluginClassLoader @5334b760; net.minecraft.network.chat.IChatBaseComponent is in unnamed module of loader java.net.URLClassLoader @4d405ef7)
at hu.montlikadani.v1_19_R3.V1_19_R3.sendTabTitle(V1_19_R3.java:115) ~[TabList-5.6.9-b197.jar:?]
at hu.montlikadani.tablist.tablist.TabHandler.sendTab(TabHandler.java:291) ~[TabList-5.6.9-b197.jar:?]
at hu.montlikadani.tablist.tablist.TabManager.lambda$load$0(TabManager.java:50) ~[TabList-5.6.9-b197.jar:?]
at org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftTask.run(CraftTask.java:82) ~[spigot-1.19.4-R0.1-SNAPSHOT.jar:3692-Spigot-6ad4b93-40b87e1]
at org.bukkit.craftbukkit.v1_19_R3.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54) ~[spigot-1.19.4-R0.1-SNAPSHOT.jar:3692-Spigot-6ad4b93-40b87e1]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
at java.lang.Thread.run(Thread.java:1589) ~[?:?]
tablist.yml available on request.
TabList configuration files
config.yml sans comments and blank lines
hook:
placeholderapi: true
tps-performance-observation-value: -1.0
fake-players:
enabled: false
count-fake-players-to-online-players: false
remove-gray-color-from-tab-in-spectator: false
ignore-vanished-players-in-online-players: false
count-vanished-staffs: true
hide-player-from-tab-when-afk: false
hide-players-from-tablist: false
per-world-player-list:
enabled: false
world-groups:
example1:
- exampleWorld
- exampleAnotherWorld
exampleGroup2:
- exampleWorld2
- exampleAnotherWorld2
placeholder-format:
afk-status:
enable: false
show-in-right-or-left-side: true
show-player-group: true
format-yes: '&7 [AFK]&r '
format-no: ''
sort-last: false
time:
time-zone: GMT-8:00
use-system-zone: false
time-format: mm:HH
date-format: yyyy-MM-dd
ping:
enable: true
formats:
- '&a%ping% <= 200'
- '&6%ping% >= 200'
- '&c%ping% > 500'
tps:
enable: true
formats:
- '&a%tps% > 18.0'
- '&6%tps% == 16.0'
- '&c%tps% < 16.0'
size: 1
change-prefix-suffix-in-tablist:
enable: false
refresh-interval: 4
disabled-worlds:
use-as-whitelist: false
list:
- myWorldWithUpper
sync-plugins-groups-with-tablist: true
hide-group-when-player-vanished: false
assign-global-group-to-normal: false
prefer-primary-vault-group: true
followNameTagVisibility: false
tablist-object-type:
type: none
refresh-interval: 3
custom-value: '%level%'
disabled-worlds:
- testingWorld
check-update: false
download-updates: false
logconsole: true
Bug description
TabList displays correctly, but WARN messages at console occur repeatedly, especially when I change worlds.
Since there are now multiple (dev) releases with the same version string (5.6.9), it would be helpful if build numbers were appended -- for example:
TablList-5.6.9-b198.jar
-- after the first 5.6.9 release.
I have no idea how to do that without breaking the update checker
I don't use the built-in update-checker (I have my own automagical update-checker), so I don't know how it works. But I assume that it checks the formal release channel, which hosts 5.6.9
. My suggestion was that dev releases carry build numbers, not the "production" releases. So the update checker would continue to see 5.6.9
until you release a higher version. Meanwhile, update-checkers like mine, which follow the dev releases, would also work.