使用Jackson库的Bukkit ItemStack序列化。

问题描述 投票:0回答:1

我正试图使用Jackson JSON库序列化和反序列化一个ItemStack。到目前为止,我已经成功地序列化了ItemStack,但是当我去反序列化它时,我得到了以下错误。

com.fasterxml.jackson.databind.JsonMappingException: Can not find a (Map) Key deserializer for type [simple type, class org.bukkit.enchantments.Enchantment]

我不知道为什么会这样 我已经尝试了不同版本的Jackson库,但没有用,我还是得到了完全相同的错误。我试过将ItemStacks序列化,有的有,有的没有,但还是会出现这样的错误。在此感谢任何帮助。

我正在使用下面的代码来反序列化我的ItemStack。

try {
    ItemStack item = objectMapper.readValue(gang.getVaultItems().get(slot), ItemStack.class);
} catch (IOException ex) {
    ex.printStackTrace();
}
java json jackson bukkit
1个回答
0
投票

你可能需要使用自定义的反序列化来解决这个问题。你可以阅读更多关于它的内容 此处. 值得注意的是,默认情况下,Bukkit使用一个相当自定义的YAML实现来处理序列化和反序列化。请研究一下 配置可序列化 如果你不熟悉。

© www.soinside.com 2019 - 2024. All rights reserved.