Java 22 - error serialization and deserialization BigDecimal
Opened this issue · 0 comments
PRIESt512 commented
Example:
var byt = one.nio.serial.Serializer.persist(BigDecimal.ZERO);
Error:
Exception in thread "main" java.lang.VerifyError: Bad invokespecial instruction: current class isn't assignable to reference class.
Exception Details:
Location:
sun/reflect/Delegate0_BigDecimal.write(Ljava/lang/Object;Lone/nio/serial/DataStream;)V @9: invokespecial
Reason:
Error exists in the bytecode
Bytecode:
0000000: 2bc0 0015 4c2b b200 1bb7 001f 2c2b b400
0000010: 23b6 0031 2c2b b400 34b6 0038 b1
at java.base/java.lang.Class.getDeclaredConstructors0(Native Method)
at java.base/java.lang.Class.privateGetDeclaredConstructors(Class.java:3572)
at java.base/java.lang.Class.getConstructor0(Class.java:3777)
at java.base/java.lang.Class.getDeclaredConstructor(Class.java:2955)
at one.nio.serial.gen.DelegateGenerator.instantiate(DelegateGenerator.java:108)
at one.nio.serial.GeneratedSerializer.<init>(GeneratedSerializer.java:57)
at one.nio.serial.Repository.generateFor(Repository.java:379)
at one.nio.serial.Repository.get(Repository.java:182)
at one.nio.serial.PersistStream.writeObject(PersistStream.java:52)
at one.nio.serial.Serializer.persist(Serializer.java:140)
Version one-nio: 1.7.1