我的AndroidStudio3.2.1,按理说Gradle应该对应的是得用 gradle-4.6-all.zip,但是在上图所示位置选择 gradle-4.6-all 的路径,却怎么都不能成功 gradle build running。
同时,正常能用时用的是上图以及下图的配置:
如果想强行把Settings里的Service directory path改成gradle-4.6-all
会报如这样的错误:Gradle:Resolve javawriter.jar(com.squareup:javawriter:2.5.0)
过了几天,回来更新,我知道为什么了。
1.为什么我设置的路径是指向gradle-4.4-all的,但是我的AS3.2.1用它来编译gradle-4.6的项目却可以?
答案去到这个路径里找:
发现了没有,在gradle-4.4-all目录下,还包含了旧版本和4.6的版本,这是为什么呢?
因为我在AS里的Service directory path指定了路径,当导入不同gradle版本的项目时,如果编译器发现没有相对应的gradle版本,那么它就会开始下载对应版本存在这里。
2.既然是设置的路径问题导致的,那么有没有办法设置一个路径,里面存放各个版本的gradle,当导入不同的Android项目时系统自动调用对应的gradle版本呢?
本人还没找到这个问题的解决办法。
我做了下尝试,把Service directory path的路径改为,C:\Users\MKChen\.gradle\wrapper或者C:\Users\MKChen\.gradle\wrapper\dists 都没能实现,有点遗憾。
等以后找到解决办法了再回来更新吧。
--------------------------------------------------分割线------------------------------------------------------
找到解决办法啦,也弄懂了,都怪自己的记性不好。
问题的源头在于——详见我的另一片文章:https://blog.csdn.net/m0_37292262/article/details/81395369
记住!!!
AS的默认gradle路径为——C:\Users\用户名\.gradle
在这个路径下会生成:
gradle不是可以离线下载嘛,放的路径就是在:wrapper的dists路径下
还要放在更细分的路径下,看图:
懂了吧?
接着:
但是这样配置之后,打开AndroidStudio将Service 新建或者打开目录在configure build时还是会 gradle sync failed。
原因是:你没联网或者没FQiang!!
联网后就解决了:
---------
再回过头看此时.gradle文件夹:
至此,所有问题解决了,不过真的是折腾,但是经过这么一折腾,我学到了很多东西。
1、比如AndroidStudio版本号对应着build.gradle里指明的版本:
dependencies { classpath 'com.android.tools.build:gradle:3.2.1'
2、学到了不同AndroidStudio版本对应的gradle版本:
3、知道了默认的gradle路径,就在C盘用户目录下的.gradle。还有认识了其中的目录结构。
4、gradle4.6的新特性,如在build-gradle里的google()现在一定要放在jcenter()之前。
buildscript { repositories { google() jcenter() }
5、AndroidStudio3.2.1的新特性——请看
Android Studio release notes:https://developer.android.google.cn/studio/releases/
6、AndroidStudio怎么打开其他gradle版本的项目。