Jackson-Databind:2.9.10 以上版本的编译问题
Jackson-Databind: Compilation issue for the version greater than 2.9.10
我正在使用 jackson-databind 2.9.10。我尝试升级版本。
我尝试了很多版本。但是,尝试使用最新版本 2.12.2
对于高于 2.9.10 的所有版本,我在以下代码中遇到编译问题。
Map<String, List<Map<String, Object>>> result =
objectMapper.readValue(inputResponse, new TypeReference<Map<String, Object>>() {
});
问题: 不兼容的类型:推理变量 T 具有不兼容的边界
输入响应的字符串格式如下json:
{
"config": [{
"key1": "value1",
"key2": "value2",
"key3": [{
"key3.1": "value3.1",
"key3.2": "value3.2",
"key3.3": [{
"key3.3.1": "value3.3.1",
"key3.3.2": "value3.3.2"
}]
}]
}]}
从 jackson mapper 2.10.0 开始,TypeReference 的范围必须与响应变量的类型匹配。
更多信息:
https://github.com/FasterXML/jackson-databind/pull/2196
我正在使用 jackson-databind 2.9.10。我尝试升级版本。
我尝试了很多版本。但是,尝试使用最新版本 2.12.2
对于高于 2.9.10 的所有版本,我在以下代码中遇到编译问题。
Map<String, List<Map<String, Object>>> result =
objectMapper.readValue(inputResponse, new TypeReference<Map<String, Object>>() {
});
问题: 不兼容的类型:推理变量 T 具有不兼容的边界
输入响应的字符串格式如下json:
{
"config": [{
"key1": "value1",
"key2": "value2",
"key3": [{
"key3.1": "value3.1",
"key3.2": "value3.2",
"key3.3": [{
"key3.3.1": "value3.3.1",
"key3.3.2": "value3.3.2"
}]
}]
}]}
从 jackson mapper 2.10.0 开始,TypeReference 的范围必须与响应变量的类型匹配。
更多信息: https://github.com/FasterXML/jackson-databind/pull/2196