FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':shared_preferences_android:compileDebugJavaWithJavac'.
> Could not resolve all files for configuration ':shared_preferences_android:androidJdkImage'.
> Failed to transform core-for-system-modules.jar to match attributes {artifactType=_internal_android_jdk_image, org.gradle.libraryelements=jar, org.gradle.usage=java-runtime}.
> Execution failed for JdkImageTransform: C:\Users\Administrator\AppData\Local\Android\sdk\platforms\android-34\core-for-system-modules.jar.
> Error while executing process D:\Program Files\Android\Android Studio\jbr\bin\jlink.exe with arguments {--module-path C:\Users\Administrator\.gradle\caches\transforms-3\8b1ee8b41298da6569946ea2a7f2a6b7\transformed\output\temp\jmod --add-modules java.base --output C:\Users\Administrator\.gradle\caches\transforms-3\8b1ee8b41298da6569946ea2a7f2a6b7\transformed\output\jdkImage --disable-plugin system-modules}
这个问题是由于编译过程默认使用android studio默认的jdk21,版本过高,详情可以使用flutter doctor -v 查看java版本
解决方案:
第一个办法,在项目的中的 android/gradle.properties
文件,强制修改项目使用的java版本
添加一行(推荐使用jdk 17), 路径要用两个反斜杠
org.gradle.java.home=C\:\\Users\\Administrator\\.jdks\\corretto-17.0.13
第二个方法,设置全局java环境变量
然后删除掉android studio中的jbr, 这样就会用你设置的全局版本