目录

前言

一、项目环境

二、报错信息

三、问题分析

四、解决方法


前言

java.lang.String java.io.File.path accessible”。这个错误通常会在编译或运行项目时出现,导致项目无法正常运行。

这个错误的原因是因为 Android Studio 使用了一个名为 “Instant Run” 的功能,该功能会在运行应用程序时修改应用程序的字节码。然而,这个功能可能会与某些库或插件不兼容,导致出现上述错误。

一、项目环境

  • Flutter: 3.7.11
  • Android Studio: 2020.5.20
  • Java: 1.8
  • Gradle: 4.0.0
  • Android Gradle Plugin (AGP): 4.1.3

二、报错信息

Execution failed for task ':app:processDailyDebugMainManifest'.> 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 @2374ab37

三、问题分析

“Unable to make field private final java.lang.String java.io.File.path accessible” 这个错误通常是由于 Android Studio 的 Instant Run 功能与某些库或插件不兼容导致的。具体来说,Instant Run 功能会在运行应用程序时修改应用程序的字节码,而某些库或插件可能会依赖于应用程序的原始字节码,导致出现上述错误。

这个错误的解决方法有很多种,可以尝试禁用 Instant Run 功能、更新 Android Studio 版本、更新 Gradle 版本、检查项目依赖库等等。具体的解决方法需要根据具体情况进行选择。

总之,这个错误通常是由于兼容性问题导致的,需要仔细分析错误信息和项目依赖关系,才能找到正确的解决方法。

四、解决方法

  1. 禁用 Instant Run 功能:在 Android Studio 中,可以通过 “File” -> “Settings” -> “Build, Execution, Deployment” -> “Instant Run” 菜单来禁用 Instant Run 功能。

  2. 更新 Android Studio 版本:如果你的 Android Studio 版本比较旧,可以尝试更新到最新版本,因为新版本可能已经修复了这个问题。

  3. 更新 Gradle 版本:如果你的 Gradle 版本比较旧,可以尝试更新到最新版本,因为新版本可能已经修复了这个问题。

  4. 检查项目依赖库:如果你的项目依赖了一些库或插件,可以尝试升级或降级这些库或插件,以解决兼容性问题。