1.gradle版本对应关系
classpath ‘com.android.tools.build:gradle:2.3.0’
可以支持gradle-wrapper.properties中的
distributionUrl=https\://services.gradle.org/distributions/gradle-3.3-all.zip
从3.3 到4.4
classpath ‘com.android.tools.build:gradle:2.2.3’
可以支持gradle-wrapper.properties中的
distributionUrl=https\://services.gradle.org/distributions/gradle-3.0-all.zip从3.0到哪3.2
- classpath ‘com.android.tools.build:gradle:1.5.0’
可以支持gradle-wrapper.properties中的
distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip
从2.4到哪2.9
2. 使用离线gradle的方法
gradle的全版本(已经上传到LYC的网盘):
https://pan.baidu.com/disk/home?#/all?vmode=list&path=%2Fgradlewrapper
2.1 导入新工程
首先校验里面的/gradle/wrapper/gradle-wrapper.properties
如果本地(/Users/liuyc/.gradle/wrapper/dists)没有这个版本的gradle会去下载,
这时候会在dists目录生成一个”gradle-2.2-all/*/“目录
使用离线gradle的方法:
- cancel掉本次gradle编译,并完全退出AS(不只是关闭工程)
- 把离线的gradle zip包拷贝进那个随机名的目录,删除这个目录的其他文件
- 再次启动AS打开这个Project,这样AS就使用这个Zip包了
2.2 命令行打包(gradlew 命令)
虽然导入工程时候做了一遍了,但是这个命令还是会额外再下一次gradle版本,同样会在”/Users/liuyc/.gradle/wrapper/dists”目录再生成一个”gradle-2.2-all/*/“目录
使用离线gradle的方法同上
PS:最终每个”/Users/liuyc/.gradle/wrapper/dists/gradle-..*-all”会有两个随机名的目录
(一个对应于编译时候,另外一个对应于gradlew命令行时候的)
2.3 不要忘了gradle-wrapper.property要和build.gradle里面的配置对应
对应关系参考上面的
3. AS设置里面的离线gradle
4.工程导入
4.1 普通eclipse 工程导入
直接import,AS会提示转成eclipse工程
4.2 github上的工程导入
用AS打开top level的settings.gradle选择进行配置导入
ps:如果这一步直接导入的话就会报 Could not find method android() for arguments
可能遇到的问题:
配置sdk位置(顶层build.gradle同级)
local.properties(建议从已有工程拷贝一个)
sdk.dir=/Users/lyc/codeTools/android-sdk配置模块的build.gradle的gradletoolVersion版本
buildToolsVersion ‘23.0.2’
建议从已有工程的里面找一个可用的版本填上去
查看自己已经有哪些版本的buildTools的方法,
- modle配置模块的工程compileSdkVersionversion
为一个已有版本的
- 配置
dependencies中的com.android.support的版本,要求是于compileSdkVersionversion的版本一直
,但是这个不好处理
compile ‘com.android.support:design:25.1.1’
compile ‘com.android.support:appcompat-v7:25.1.1’
compile ‘com.android.support:cardview-v7:25.1.1’
英文有子序列号
建议按照以下方法写
compile ‘com.android.support:cardview-v7:25.+’
这样就会取本版本号下面最大的一个
5.配置本地Gradel版本
这个常见于直接从别人那里拷贝的工程(也就是带有gradle/wrapper/**)的工程
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip
gradle会去找这个版本的gradle,如果找不到就会重新下载
gradle的默认下载目录在用户目录的.gradle/wrapper/dists文件夹中(隐藏的) 里面会有所有已经下载的gradle 版本,可以把它改成一个已经有的版本就行
1.3 本地工程导入
直接import