Android 手动下载Gradle的cache依赖包

时间:2024-04-12 20:38:03

前言

有些时候,遇到gradle构建下载依赖包的时候出现了错误,或者timeout。于是乎就想要自己手动去maven、jcenter、jitpack、aliyun等仓库去下载。下载之后呢可以放在gradle的cache目录下面,也就是下面的地址

.gradle/caches/modules-2/files-2.1

Android 手动下载Gradle的cache依赖包
可以看到,gradle构建下载的依赖包都在这里。

然而当我们手动下载之后,还需要放到对应的包的目录下面去。

Android 手动下载Gradle的cache依赖包

那么问题来了,下载好了之后这个目录是啥?
网上资料很少,只知道是SHA1码,一开始还以为是下载的URL的SHA1码,结果验证了一下,却不是的。

解决

最终直接分享答案,这个目录其实就是下载的文件的SHA1码,是文件的SHA1。

mac的话可以用shasum命令查看。

shasum (文件路径)

win的话好像是

certutil -hashfile (文件路径) SHA1

最后

一般情况,jar、aar、pom、source、doc等文件,都是一个SHA1目录对应一个文件。
有些时候,jar和pom会下载到同一个目录下面,这时候呢,其实还是用的是jar的SHA1。
Android 手动下载Gradle的cache依赖包

顺便再说一下pom是干啥的。
pom其实就是aar或者jar依赖的其他第三方工程的一个配置文件。

Android 手动下载Gradle的cache依赖包

可以看到,这里其实是seamless-http的第三方依赖,比如servlet-api、seamless-util等,就跟gradle一样。gradle依赖的第三方库,可能还依赖了其他的三方库。