升级Flutter至最新版本后遇ZipException错误,求解决方法
解决Flutter升级后Gradle ZipException错误
这个错误的核心是Gradle相关压缩包损坏,导致解压时找不到zip文件的结束标记,直接按以下步骤处理:
删除损坏的Gradle Wrapper文件
找到你的Flutter项目根目录,删除gradle/wrapper/gradle-wrapper.jar文件。清理本地Gradle缓存
删除本地存储的Gradle分发包缓存,路径根据系统不同:- Windows:
C:\Users\<你的用户名>\.gradle\wrapper\dists - macOS/Linux:
~/.gradle/wrapper/dists
- Windows:
重新运行项目
在项目根目录执行flutter run,系统会自动重新下载完整的Gradle Wrapper和对应的分发包,问题应该就能解决。
如果上述方法无效,可以手动修改gradle/wrapper/gradle-wrapper.properties中的distributionUrl,指定一个稳定版本的Gradle(比如https\://services.gradle.org/distributions/gradle-7.6-all.zip),然后再执行flutter run。
以下是你遇到的错误日志:
Exception in thread "main" java.util.zip.ZipException: zip END header not found at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1607) at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1497) at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1504) at java.base/java.util.zip.ZipFile$Source.<init>(ZipFile.java:1308) at java.base/java.util.zip.ZipFile$Source.get(ZipFile.java:1271) at java.base/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:733) at java.base/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:850) at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:248) at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:177) at java.base/java.util.zip.ZipFile.<init>(ZipFile.java:191) at org.gradle.wrapper.Install.unzip(Install.java:214) at org.gradle.wrapper.Install.access$600(Install.java:27) at org.gradle.wrapper.Install$1.call(Install.java:74) at org.gradle.wrapper.Install$1.call(Install.java:48) at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65) at org.gradle.wrapper.Install.createDist(Install.java:48) at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:128) at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61) Exception: Gradle task assembleDebug failed with exit code 1 Exited (sigterm)
内容的提问来源于stack exchange,提问作者Martins
相关产品推荐
相关产品推荐

