React Native项目运行失败,报java.util.zip.ZipException打开压缩文件错误
解决Gradle Wrapper解压ZipException错误
从你的错误日志和尝试过的操作来看,核心问题出在全局Gradle缓存里的gradle-4.1-all.zip压缩包损坏/未完整下载——你之前删除项目本地的gradle目录没用,因为这个压缩包是存在系统级的缓存路径里的,不是项目内部的文件。
具体修复步骤:
- 第一步:清理损坏的缓存文件
找到路径/var/root/.gradle/wrapper/dists/gradle-4.1-all/bzyivzo6n839fup2jbap0tjew/,把里面的gradle-4.1-all.zip文件以及任何已解压的残留文件夹全部删除干净。 - 第二步:手动下载完整压缩包
去Gradle官方版本仓库找到对应版本的gradle-4.1-all.zip完整包,确保下载过程网络稳定、没有中断,下载完成后把这个zip文件放到刚才清空的那个目录里。 - 第三步:重新构建项目
回到你的React Native项目,重新运行构建命令(比如react-native run-android),这时候Gradle Wrapper会直接使用你手动放置的完整压缩包解压,不会再重复下载,应该就能解决问题了。
额外注意事项:
- 从路径能看出你是用root用户执行的构建,要确保上述缓存目录的读写权限正常,避免解压时触发权限错误。
- 后续构建尽量保证网络稳定,防止再次出现下载中断导致压缩包损坏的情况。
以下是你提供的完整错误日志:
Unzipping /var/root/.gradle/wrapper/dists/gradle-4.1-all/bzyivzo6n839fup2jbap0tjew/gradle-4.1-all.zip to /var/root/.gradle/wrapper/dists/gradle-4.1-all/bzyivzo6n839fup2jbap0tjew Exception in thread "main" java.util.zip.ZipException: error in opening zip file at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init>(ZipFile.java:225) at java.util.zip.ZipFile.<init>(ZipFile.java:155) at java.util.zip.ZipFile.<init>(ZipFile.java:169) at org.gradle.wrapper.Install.unzip(Install.java:159) at org.gradle.wrapper.Install.access$500(Install.java:26) at org.gradle.wrapper.Install$1.call(Install.java:69) at org.gradle.wrapper.Install$1.call(Install.java:46) at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65) at org.gradle.wrapper.Install.createDist(Install.java:46) at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:126) at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61) Could not install the app on the device, read the error above for details. Make sure you have an Android emulator running or a device connected and have set up your Android development environment: https://facebook.github.io/react-native/docs/getting-started.html
内容的提问来源于stack exchange,提问作者Mian Hassan
相关产品推荐
相关产品推荐

