kotlin 1.1.4-3 jdk 1.8-112 fastjson 1.2.38 场景是开多线程,反序列化同一个data class,使用的方法是JSON.parseObject(String, Class) 线程数在1-3的时候正常,从4个线程开始,出现报错: com.alibaba.fastjson.JSONException: default constructor not found. class com.haiziwang.platform.krediskt.common.pojo.info.Server at com.alibaba.fastjson.util.JavaBeanInfo.build(JavaBeanInfo.java:409) at com.alibaba.fastjson.util.JavaBeanInfo.build(JavaBeanInfo.java:175) at com.alibaba.fastjson.parser.ParserConfig.createJavaBeanDeserializer(ParserConfig.java:602) at com.alibaba.fastjson.parser.ParserConfig.getDeserializer(ParserConfig.java:519) at com.alibaba.fastjson.parser.ParserConfig.getDeserializer(ParserConfig.java:341) at com.alibaba.fastjson.parser.DefaultJSONParser.parseObject(DefaultJSONParser.java:623) at com.alibaba.fastjson.JSON.parseObject(JSON.java:348) at com.alibaba.fastjson.JSON.parseObject(JSON.java:252) at com.alibaba.fastjson.JSON.parseObject(JSON.java:471)
跟了下代码,发现应该是TypeUtils.getKoltinConstructorParameters(Class)这个方法的问题 刚进入这个方法,TypeUtils类中kotlin_kclass_constructor属性就不为空,但是kotlin_kclass_getConstructors为空,导致在TypeUtils.java的2091行报错空指针,导致这个方法返回null,然后出现上述问题