[BUG]JSONArray反序列化错误
- Dominant language
- Java
- Stars
- 4.4k
- Forks
- 613
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 6
Description
### 问题描述
用Fastjson 2.0.8序列化了一个JSONArray,然后用Fastjson2 2.0.25进行反序列化时报错
### 环境信息
*请填写以下信息:*
- OS信息: [CentOS 8.4.2105 4Core 3.10GHz 16 GB]
- JDK信息: [Openjdk 1.8.0_312]
- 版本信息:[Fastjson2 2.0.25]
### 重现步骤
1. 用Fastjson 2.0.8序列化一个JSONArray到文件
2. 用Fastjson 2.0.8反序列化成功
3. 升级到Fastjson 2.0.25之后反序列化失败
### 期待的正确结果
希望能够跨版本反序列化
### 相关日志输出
java.io.InvalidClassException: com.alibaba.fastjson.JSONArray; local class incompatible: stream classdesc serialVersionUID = -2661077227301049955, local class serialVersionUID = 3642856726642946224
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:699)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:2005)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1852)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:2186)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1669)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:503)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:461)
at FastJsonTest.main(FastJsonTest.java:24)
Contributor guide
Research direction
Start by reproducing the failure described in FastJsonTest.java at line 24, using data serialized with Fastjson 2.0.8 and deserialized with 2.0.25. Compare the JSONArray serialization compatibility across those versions and verify that the stored data can be deserialized successfully after the change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100