先了解一下cache的基本概念
Android 手动下载Gradle的cache依赖包
gradle缓存位置及拷贝jar到maven资源库
上面两篇文章,我们知道gradle会把下载的包缓存到到.gradle/caches/modules-2/files-2.1目录下,而且知道了目录结构的命名规则。
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine the dependencies of task ':SohuVideoPadMain:preDebugBuild'.
> Could not resolve all task dependencies for configuration ':SohuVideoPadMain:debugRuntimeClasspath'.
> Could not resolve com.sina.weibo.sdk:core:4.4.1.
Required by:
project :SohuVideoPadMain
> Could not resolve com.sina.weibo.sdk:core:4.4.1.
> Could not get resource 'https://dl.bintray.com/thelasterstar/maven/com/sina/weibo/sdk/core/4.4.1/core-4.4.1.pom'.
> Could not HEAD 'https://dl.bintray.com/thelasterstar/maven/com/sina/weibo/sdk/core/4.4.1/core-4.4.1.pom'. Received status code 403 from server: Forbidden
现在,我们遇到远程包下载不下来,可能是远程地址失效了,上面的错误日志。想着把别人缓存的copy过来使用。安装上面的文章好像是可以,可是,实际情况是,gradle还是去下载,在网上看到如下一篇文章:
gradle下依赖cache的使用
里面提到把缓存的包放到,Android stuido 安装路径/Contents/gradle/m2repository下面。这个可能对于老版本的AS是对的,新的AS,我得是4.1.2版本,Contents已经没有gradle目录了。我猜,是google认为,没有必要把gradle放到AS里面,都放到了.gradle/目录里面了。所以上面文章中的方法也不行。
不知道为啥?理论上,是可以直接使用本地缓存包的,可是就是不行。
最后只能把第三方包放到项目里了。
有知道原因的,请留言,谢谢啦