gpt4 book ai didi

java - MaxMind GeoIP2(版本 2.7.0)在 GAE 中不可用

转载 作者:行者123 更新时间:2023-12-01 21:36:20 25 4
gpt4 key购买 nike

我正在尝试在 Google App Engine 上使用 MaxMind GeoIP2。在本地它可以工作,但是当我将它部署到 GAE 上时,由于类受限,我收到错误

java.lang.NoClassDefFoundError: java.nio.MappedByteBuffer is a restricted class. Please see the Google App Engine developer's guide for more details.
at java.nio.channels.FileChannel.map(FileChannel.java)
at com.maxmind.db.BufferHolder.<init>(BufferHolder.java:31)
at com.maxmind.db.Reader.<init>(Reader.java:116)
at com.maxmind.geoip2.DatabaseReader.<init>(DatabaseReader.java:39)
at com.maxmind.geoip2.DatabaseReader.<init>(DatabaseReader.java:27)
at com.maxmind.geoip2.DatabaseReader$Builder.build(DatabaseReader.java:133)

是否有任何“技巧”,例如使用特定版本的 GeoIP2,不会出现此错误?我通过 gradle 使用版本 2.7.0

compile group: "com.maxmind.geoip2", name: "geoip2", version: "2.7.0"

有人尝试过旧版本的 GeoIP 吗?那里有运气吗?我唯一的目的是了解如何使用这个库(如果可能的话),或者找到一个提供相同功能的替代库(从 IP 获取该国家/地区的 ISO 代码)

最佳答案

您应该能够在 GAE 上使用 GeoIP2 中的内存模式:

DatabaseReader reader = new DatabaseReader.Builder(dbFile)
.fileMode(Reader.FileMode.MEMORY).build();

关于java - MaxMind GeoIP2(版本 2.7.0)在 GAE 中不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36911176/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com