如何解决 Java 9 上的 InaccessibleObjectException
使用 Java 9 时,开发人员可能会遇到 InaccessibleObjectException。这是由于Java平台模块系统实现了强封装性。
异常消息分解:
Unable to make {member} accessible: module {A} does not "opens {package}" to {B}
导致异常的主要场景:
1。反射调用 JDK
2。对应用程序代码的反思
1。反射调用 JDK 的解决方案:
使用以下命令行标志打开指定的包进行反射:
java --add-opens java.base/java.lang=ALL-UNNAMED
将 ALL-UNNAMED 替换为命名的名称模块(如果适用)。
2.应用程序代码反射的解决方案:
编辑模块 {A} 以使用其模块描述符中的以下选项之一打开内部包:
以上是如何修复 Java 9 的 InaccessibleObjectException:JDK 和应用程序代码解决方案?的详细内容。更多信息请关注PHP中文网其他相关文章!