最近升级JDK17的时候,本地开发机遇到了一个问题,如下:
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make field private final byte[] java.lang.String.value accessible: module java.base does not "opens java.lang" to unnamed module @396f6598
Java 平台模块系统(JPMS)自 Java 9 开始引入,它强制执行封装边界,并且只允许明确导出的包进行访问。默认情况下,java.lang和其他一些核心Java包都不会向unnamed模块开放。
cv到VM的配置里面就行
--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED