fastjson 升级到1.2.61版本出现的问题

ulmd4ohb  于 2021-11-27  发布在  Java
关注(0)|答案(8)|浏览(427)

java.lang.NoSuchMethodError: com.alibaba.fastjson.serializer.MapSerializer.processValue(Lcom/alibaba/fastjson/serializer/JSONSerializer;Lcom/alibaba/fastjson/serializer/BeanContext;Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;I)Ljava/lang/Object;
at com.alibaba.fastjson.serializer.MapSerializer.write(MapSerializer.java:200)
at com.alibaba.fastjson.serializer.MapSerializer.write(MapSerializer.java:44)
at com.alibaba.fastjson.serializer.JSONSerializer.write(JSONSerializer.java:285)
at com.alibaba.fastjson.JSON.toJSONString(JSON.java:960)

请问这个是什么鬼,明明这个类里边可以找到这个processValue方法,后边的参数类型也都对的上

3lxsmp7m

3lxsmp7m1#

能给个简单的用例吗 以及升级前的版本情况

t9aqgxwy

t9aqgxwy2#

感觉是版本问题 有点像是jar冲突了

gzjq41n4

gzjq41n43#

1.2.61 现在中央仓库还没有吧

ddarikpa

ddarikpa4#

检查下是不是多个版本共存了?

oyt4ldly

oyt4ldly5#

没有多个版本,只有一个版本,

swvgeqrz

swvgeqrz6#

你这个肯定就是编译时引用的一个版本,运行时加载的另一个版本,你在idea中搜索一下这个文件肯定存在两个或者两个以上

ukxgm1gy

ukxgm1gy7#

可以用arthas上去看一下实际运行的 比如如果你是tomcat项目 说不准原来的tomcat的lib放了一个fastjson

bkhjykvo

bkhjykvo8#

我也遇到这个问题了,不过不是版本的问题。
是redisTemplate里面setValueSerializer设置的问题。
原来用的1.2.28版本的时候都正常,换成1.2.61之后就不行了。
定位到是setValueSerializer的问题,换成FastJsonRedisSerializer问题搞定。

相关问题