本文介紹了Java.lang.refect.inaccessible對象異常無法使jdk.internd.loader.ClassLoader的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我有一個例外,如java.lang.reflect.InaccessibleObjectException:Unable to Make jdk.internal.loader.ClassLoaders$AppClassLoader(jdk.internal.loader.ClassLoaders$PlatformClassLoader,(jdk.inder.loader.URLClassPath):模塊java.base無法向未命名的模塊@45f08579″打開jdk.inder.loader”
使用庫后編譯器組:‘com.giighb.nowindy’,名稱:‘scriptlet4docx’,版本:‘0.8.6’
我找到了一些解決方案,如
1.Java–添加-從此處打開java.base/java.lang=all-unnameHow to solve InaccessibleObjectException ("Unable to make {member} accessible: module {A} does not 'opens {package}' to {B}") on Java 9?
2.Java–添加-打開java.base/jdk.inder.loader=all-未命名–添加-打開jdk.zipfs/jdk.nio.zipfs=all-未命名-jar腳本4docx-0.8.6.jar
所以我嘗試在我的終端中運行這個命令,但它不起作用。此外,我還嘗試添加了如下的VM選項
enter image description here
或此處enter image description here
但這兩種方法都不起作用…
我在IntelliJ jdk11中使用了默認版本的JDK。
推薦答案
事實上,POST解決方案說你必須用Blow的jvm制作鏡子。jvm的選項不是在IntelliJ中,而是在Gradle中。
所以我在build.gradle中添加了這段代碼,然后它就起作用了
tasks.withType(JavaExec) {
jvmArgs += ['--add-opens', 'java.base/jdk.internal.loader=ALL-UNNAMED']
}
這篇關于Java.lang.refect.inaccessible對象異常無法使jdk.internd.loader.ClassLoader的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,