WeChatOpenSdkSample项目无法打开,报Gradle错误

简介: WeChatOpenSdkSample项目无法打开,报Gradle错误

在集成微信功能的过程中,在打开微信的WeChatOpenSdkSample项目时,遇到了以下问题:

ERROR: Failed to open zip file.
Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.)
Re-download dependencies and sync project (requires network)

从错误提示的意思理解,是某些错误导致网络链接超时,经过排查发现不少网络问题,那就只能是gradle的问题了。

被gradle坑过的童鞋肯定知道,gradle报的好多错误提示都跟真正的错误八竿子打不着的,所以接着看是不是gradle缓存的问题。

删除gradle缓存的文件,重新下载

我在stackoverflow上找到了一个一样的问题Error:Failed to open zip file. Gradle's dependency cache may be corrupt,它的解决方式是让我删除~/.gradle/wrapper/dists目录下的所有文件,然后重新打开ide,此时ide会重新下载gradle依赖。

经过尝试,这个方法对我无用,这说明我本地的gradle缓存是正确的,问题的根源在别的地方。

对比gradle配置

既然没办法,就只能出大招了,找一个正常的项目来和报错的项目进行对比。既然项目打开的时候就报错,那大概了是gradle配置的问题,所以我们关注点就在主要在gradle/wrapper/gradle-wrapper.properties文件里面,我们看下它们具体内容:

报错的项目:

#Wed Apr 12 10:05:56 CST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http://android.oa.com/gradle/gradle-4.7-all.zip

正确的项目:

#Thu Oct 17 10:01:43 CST 2019
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip

对比之后发现,distributionUrl不一致,报错的项目配置的不是as项目自带的路径,所以我们把这个路径改成一致的,原有的版本号4.7保留,结果如下:

distributionUrl=https\://services.gradle.org/distributions/gradle-4.7-all.zip

接着同步项目,发现同步成功了。这里需要说明的是,distributionUrl是用来下载gradle压缩包的,它可以更改成代理地址或者本地的缓存文件地址。这里报错项目的distributionUrl明显是修改为它们自己使用的代理了,所以我才会同步不成功。

参考

Error:Failed to open zip file. Gradle's dependency cache may be corrupt

相关文章
|
9月前
|
Java Spring
在idea中创建spring boot的Gradle项目并启动(有一个小demo)(三)
在idea中创建spring boot的Gradle项目并启动(有一个小demo)(三)
159 1
|
4月前
|
Java Spring
使用Gradle创建SpringBoot项目
使用Gradle创建SpringBoot项目
161 0
|
1月前
|
Java 测试技术 API
云效流水线构建gradle项目失败提示gradle版本过低如何解决
云效(CloudEfficiency)是阿里云提供的一套软件研发效能平台,旨在通过工程效能、项目管理、质量保障等工具与服务,帮助企业提高软件研发的效率和质量。本合集是云效使用中可能遇到的一些常见问题及其答案的汇总。
32 0
|
4月前
|
开发工具 Android开发 开发者
Android 项目编译 Gradle 配置说明
Android 项目编译 Gradle 配置说明
152 0
|
4月前
|
前端开发 Java Maven
Gradle笔记 七 publishing 项目发布(二)
Gradle笔记 七 publishing 项目发布
92 0
|
4月前
|
Java Maven
Gradle笔记 七 publishing 项目发布(一)
Gradle笔记 七 publishing 项目发布
61 0
|
4月前
|
Java Maven 数据安全/隐私保护
Gradle笔记 三 Gradle的项目周期和settings 文件
Gradle笔记 三 Gradle的项目周期和settings 文件
48 0
Gradle笔记 三 Gradle的项目周期和settings 文件
|
4月前
gradle运行项目不显示异常
gradle运行项目不显示异常
46 0
|
9月前
|
Java
解决IDEA创建或打开项目时下载Gradle
我们在使用IDEA创建或打开一个Gradle项目时,IDEA会下载一个新或旧的Gradle版本,虽然下载很快,但到下次IDEA更新后又会是一个新版的Gradle版本,这样很影响我们的开发效率,所以我做了一个东西,可以让IDEA在创建或打开一个项目时使用自己指定的版本
366 0
|
9月前
|
IDE Java 应用服务中间件
以Gradle插件的方式为Java web项目启动Tomcat
在社区版IntelliJ IDEA除了用SmartTomcat,还有什么方式可以在可调试的情况下启动Tomcat呢,来试试com.bmuschko.tomcat插件吧
277 0
以Gradle插件的方式为Java web项目启动Tomcat