解决问题:Unable to make field private final java.lang.String java.io.File.path accessible: module java.b

佐咖 2024-06-16 14:35:33 阅读 56

目录

一、问题二、问题分析三、踩坑四、解决办法4.1 检测效果 五、总结

一、问题

在Android Studio中构建项目时遇到问题:Unable to make field private final java.lang.String java.io.File.path accessible: module java.base does not “opens java.io” to unnamed module @5de92e13

在这里插入图片描述

二、问题分析

这个错误是因为在使用 Java 的反射 API 来访问或修改 java.io.File.path 这个私有字段,但是 Java 的模块系统阻止了这种访问。

三、踩坑

我按照其他教程试了,比如更新 Android Studio 和 Gradle,检查第三方库,添加 JVM 参数:在你的 gradle.properties 文件中,添加以下 JVM 参数:

org.gradle.jvmargs=--add-opens java.base/java.io=ALL-UNNAMED

我试了第三种方法,对我的问题,没用。

我出现该问题是因为我导入一个新的工程项目文件,构建时报错:

Unsupported Java.

Your build is currently configured to use Java 17.0.9 and Gradle 5.4.1.

Possible solution:

Upgrade Gradle wrapper to 7.2 version and re-import the project

在这里插入图片描述

如果我点击上面蓝色字体部分,等待漫长的时间后,自动下载了一个Gradle7.2版本,我继续构建,还是继续报错:

Unsupported Java.

Your build is currently configured to use Java 18.0.2 and Gradle 7.2.

在这里插入图片描述

不对劲,不可能一直更新grade版本。

下面是我试过的JDK各个版本,死活不兼容,如下:

在这里插入图片描述

四、解决办法

将之前打开的工程文件全部删除,解压源码包后,然后重新用Android Studio打开,下载1.8版本的SDK,具体下载过程见下:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.1 检测效果

在这里插入图片描述

在这里插入图片描述

五、总结

以上就是解决问题Unable to make field private final java.lang.String java.io.File.path accessible: module java.base does not “opens java.io” to unnamed module @5de92e13的详细方法,希望能帮到有同样问题的你。

感谢您阅读到最后!关注公众号「视觉研坊」,获取干货教程、实战案例、技术解答、行业资讯!



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。