为什么Gson将LinkedListMultimap映射视图序列化为null?

时间:2013-10-16 13:41:21

标签: java gson guava

见下面的代码:

Multimap<String, String> linkedListMap = LinkedListMultimap.create();
Multimap<String, String> linkedHashMap = LinkedHashMultimap.create();
Map<String, String> normalMap = new HashMap<>();

linkedListMap.put("foo", "bar");
linkedHashMap.put("foo2", "bar2");
normalMap.put("fjf", "fsfsj");

System.out.println(new Gson().toJson(linkedListMap.asMap()));
System.out.println(new Gson().toJson(linkedHashMap.asMap()));
System.out.println(new Gson().toJson(normalMap));

它提供以下输出:

null
{"foo2":["bar2"]}
{"fjf":"fsfsj"}

为什么asMapLinkedHashMap的结果可以由Gson序列化而没有任何问题,但asMapLinkedListMap的结果始终序列化为null?< / p>

1 个答案:

答案 0 :(得分:1)

这是Guava 14.0.1上存在的一个问题。更新到Guava 15.0解决了这个问题。我仍然不知道原因。