【发布时间】:2020-08-22 20:16:18
【问题描述】:
我有一个异常 java.lang.reflect.InaccessibleObjectException: Unable to make jdk.internal.loader.ClassLoaders$AppClassLoader(jdk.internal.loader.ClassLoaders$PlatformClassLoader,jdk.internal.loader.URLClassPath) 可访问: 模块 java.base 不会“打开 jdk.internal.loader”到未命名的模块 @45f08579
在我使用库后编译组:'com.github.snowindy',名称:'scriptlet4docx',版本:'0.8.6'
我找到了一些解决方案,例如
1. java --add-opens java.base/java.lang=ALL-UNNAMED 从这里How to solve InaccessibleObjectException ("Unable to make {member} accessible: module {A} does not 'opens {package}' to {B}") on Java 9?
2. java --add-opens java.base/jdk.internal.loader=ALL-UNNAMED --add-opens jdk.zipfs/jdk.nio.zipfs=ALL-UNNAMED -jar scriptlet4docx-0.8.6.jar
所以我试图在我的终端中运行这个命令,但它不起作用。我也尝试添加 vm 选项,例如 enter image description here
或这里enter image description here 但它们都不起作用......
我在intellij jdk11中使用了默认版本的jdk。
【问题讨论】:
-
在您的情况下,该库被命名为:
If the reflecting code is in a named module, ALL-UNNAMED can be replaced by its name.
标签: java spring-boot exception classloader java-9