GeoIP throws a NoSuchMethodError on login
skerit opened this issue ยท 7 comments
Information
Full output of /ess version
:
[12:37:32 INFO]: Server version: 1.14.4-R0.1-SNAPSHOT git-Paper-209 (MC: 1.14.4)
[12:37:32 INFO]: EssentialsX version: 2.17.1.0
[12:37:32 INFO]: LuckPerms version: 4.4.1
[12:37:32 INFO]: Vault version: 1.7.2-b107
[12:37:32 INFO]: EssentialsXChat version: 2.17.1.0
[12:37:32 INFO]: EssentialsXGeoIP version: 2.17.1.0
[12:37:32 INFO]: EssentialsXSpawn version: 2.17.1.0
Help request
Problem
Whenever someone logs in, I get this error:
[12:33:03 INFO]: Skerit[/78.22.176.137:33634] logged in with entity id 371 at ([world]1623.3666912937547, 77.0, -865.8648671348998)
[12:33:03 WARN]: [Essentials] Plugin Essentials v2.17.1.0 generated an exception while executing task 3814
java.lang.NoSuchMethodError: com.fasterxml.jackson.databind.ObjectReader.treeToValue(Lcom/fasterxml/jackson/core/TreeNode;Ljava/lang/Class;)Ljava/lang/Object;
at com.maxmind.geoip2.DatabaseReader.get(DatabaseReader.java:193) ~[?:?]
at com.maxmind.geoip2.DatabaseReader.country(DatabaseReader.java:227) ~[?:?]
at com.earth2me.essentials.geoip.EssentialsGeoIPPlayerListener.delayedJoin(EssentialsGeoIPPlayerListener.java:80) ~[?:?]
at com.earth2me.essentials.geoip.EssentialsGeoIPPlayerListener.lambda$onPlayerJoin$0(EssentialsGeoIPPlayerListener.java:48) ~[?:?]
at org.bukkit.craftbukkit.v1_14_R1.scheduler.CraftTask.run(CraftTask.java:84) ~[patched_1.14.4.jar:git-Paper-209]
at org.bukkit.craftbukkit.v1_14_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:54) ~[patched_1.14.4.jar:git-Paper-209]
at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[patched_1.14.4.jar:git-Paper-209]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_222]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_222]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_222]
What I have tried
This used to work fine, I don't know what the issue could be.
I'm running the server on Ubuntu 18.04.3, with OpenJDK version 1.8.0_222
I have installed the libjackson2 packages, too.
Thanks for opening an issue for this.
This used to work fine, [...]
By "used to work fine", what do you mean? Did you update your server or any plugins? GeoIP hasn't changed significantly for quite a while so it's unlikely that an EssentialsX update caused it.
Just tested on EssX 2.17.1.19, I don't get this error, but I do get the following warning:
[07:09:51 WARN]: [com.fasterxml.jackson.databind.ext.Java7Support] Unable to load JDK7 types (annotations, java.nio.file.Path): no Java7 support added
@darbyjack What server software did you test with? Different servers may ship with different versions of Jackson and I don't believe GeoIP ships with its own.
"This happened for me too" is not super helpful. This needs to be confirmed with the latest version of Essentials, and it would be helpful if someone can point out what version(s) of the server and Essentials this does/doesn't happen on, so it can be checked.
Closing this issue since there is not sufficient information to investigate the error, and the author has not responded for months. Can re-open if someone wants this fixed and feels like providing more detail.
Also, I do have the same message @darbyjack sees on my server, however it causes no visible issues. I don't think it's correlated at all to this issue however.