【Flutter边学边实战】解决Gradle版本和Java版本不一致问题

问题前因

在开发登录功能的时候,需要用到本地缓存存储token信息,引入:get_storage: ^2.1.1之后,出现报错,导致项目编译失败,问题详情如下:

* What went wrong:
Execution failed for task ':path_provider_android:compileDebugJavaWithJavac'.
> Could not resolve all files for configuration ':path_provider_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: D:\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\admin\.gradle\caches\transforms-3\9598a8e7db6a1ad6ae2e3f0c2e7901da\transformed\output\temp\jmod --add-modules java.base --output C:\Users\admin\.gradle\caches\transforms-3\9598a8e7db6a1ad6ae2e3f0c2e7901da\transformed\output\jdkImage --disable-plugin system-modules}

 这个信息告诉我们Gradle版本和Java版本不一致,那么如何解决呢?

查看java版本和gradle版本

执行:flutter doctor -v

可以看到默认java的版本使用的java21

打开android/gradle/wrapper/gradle-wraper.properties文件:

gradle的版本是7.5

我们重新指定这两个版本:

gradle使用8.0

java使用17

可以在这里找到对应关系:
https://docs.gradle.org/current/userguide/compatibility.html

重新构建成功~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值