java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > 升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module

解决升级JDK报错:module java.base does not“opens java.lang.reflect“to unnamed module问题

作者:真砂4丁目

Spring Boot启动错误源于Java 9+的JPMS强封装机制,反射访问受限导致异常,解决方案为添加JVM参数(如--add-opens),绕过模块访问限制

问题描述

启动sprintboot时报以下错误

原因分析

异常是由Java9及以上版本中引入的Java Platform Module System引起的,特别是强封装的实现。

它仅在特定条件下允许access,对于反射导致异常的代码尝试使用相同的限制。

解决方案

增加如下虚拟运行参数(图为Eclipse的设定方法)

--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文