gpt4 book ai didi

java - Gson 安全异常 : Can not make Class Constructor accessible

转载 作者:行者123 更新时间:2023-11-29 09:09:11 25 4
gpt4 key购买 nike

我正在使用 Gson 序列化/反序列化一个包含静态嵌套类的类。该类如下所示。

public class ClassA {
private NestedClass nestedClass;

public NestedClass getNestedClass() {
return nestedClass;
}

public void setNestedClass(NestedClass nestedClass) {
this.nestedClass = nestedClass;
}

public static class NestedClass implements Serializable {

public NestedClass() {
}
}
}

序列化工作正常,但是当我尝试将 json 字符串反序列化回一个对象时,我得到以下 SecurityException。

java.lang.SecurityException: Can not make a java.lang.Class constructor accessible
at java.lang.reflect.AccessibleObject.setAccessible0(Unknown Source)
at java.lang.reflect.AccessibleObject.setAccessible(Unknown Source)
at com.google.gson.MappedObjectConstructor.getNoArgsConstructor(MappedObjectConstructor.java:86)
at com.google.gson.MappedObjectConstructor.constructWithNoArgConstructor(MappedObjectConstructor.java:63)
at com.google.gson.MappedObjectConstructor.construct(MappedObjectConstructor.java:54)
at com.google.gson.JsonObjectDeserializationVisitor.constructTarget(JsonObjectDeserializationVisitor.java:42)
at com.google.gson.JsonDeserializationVisitor.getTarget(JsonDeserializationVisitor.java:55)

异常似乎来自 Java,同时试图反射(reflect)内部类。有没有人遇到过这种情况?

感谢任何帮助。

最佳答案

看来您是在启用了 SecurityManager 的 JVM 上运行 Gson。您需要禁用安全管理器才能使用 Gson。

关于java - Gson 安全异常 : Can not make Class Constructor accessible,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13267258/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com