我正在使用 protostuff 将我自己的类的对象转换为 JSON,反之亦然。有 java 8 和 lambdas。转换为 JSON 文件,如:
LinkedBuffer buffer = LinkedBuffer.allocate(2048);
Schema schema = RuntimeSchema.getSchema(obj.getClass());
boolean numeric = false;
byte[] json = JsonIOUtil.toByteArray(obj, schema, numeric, buffer);
Files.write(file, json);
从 JSON 转换为 obj:
Schema<MyClass> schema = RuntimeSchema.getSchema(MyClass.class);
Path path = Paths.get("path");
byte[] as = Files.readAllBytes(path);
MyClass mc = schema.newMessage();
JsonIOUtil.mergeFrom(as, mc, schema, false);
当我尝试将 JSON 转换为 obj 时出现异常:
线程“主”java.lang.RuntimeException 中的异常:java.lang.ClassNotFoundException:com.test.Blabla$$Lambda$4/1699679644
我认为 lambda 是一个问题。我可以用它转换课程吗?
对象有一个字段:
private final Function<,> name;