在Android studio中安装了Flutter插件后,new 一个flutter项目,项目生成后遇到的几个报错。
1.运行自动生成的flutter项目第一个遇到的问题Exception in thread "main" java.util.zip.ZipException: zip END header not found
该问题是gradle下载的问题,把gradle-wrapper.properties文件中
distributionUrl改为腾讯云的镜像地址就可以解决。
2.再运行又报错Your project's Gradle version is incompatible with the Java version that Flutter is using for Gradle.
字面大致意思是gradle版本和java版本不兼容
在命令框中执行**
flutter analyze --suggestions**命令,用于分析项目中潜在的问题,运行后输出:
果然最后一项是个叉号,版本不兼容并分别给出了java和gradle的版本号。
通过 AndroidStdio 创建的 Flutter项目,默认 gradle 版本是 7.6.3,如果当前 JDK 版本为 21 时,gradle 需要升级到 8.5 及以上才能支持(JDK 与 Gradle 版本的对应关系详见 # Compatibility Matrix)
解决方法是改两个地方:
①gradle-wrapper.properties 中的 distributionUrl
②settings.gradle 中的
com.android.application(AGP),需要注意的是AGP的版本和下面kotlin的版本也要兼容(参考# Configure a Gradle project),改成:
此时再运行**
flutter analyze --suggestions**命令就会得到:
全都是对号了@_@
,OK再来运行项目,终于跑起来了哈哈。等等怎么打印了3个警告:
警告: [options] 源值 8 已过时,将在未来发行版中删除
警告: [options] 目标值 8 已过时,将在未来发行版中删除
警告: [options] 要隐藏有关已过时选项的警告, 请使用 -Xlint:-options。
强迫症不能忍,查了查说是因为SDK的版本:
改成:
完美解决。